奶兔

导航

Python -- 1 语法基础(一)

目录

一、注释

二、变量

三、数据类型

三、输出

四、输入

五、运算符的分类

六、条件语句

七、循环语句

八、字符串


一、注释

添加注释为了提高代码的可读性

单行注释是:以#开头的就是注释;     快捷键ctrl+/

多行注释是 : """    注释内容    """     一般用于注释代码。

二、变量

变量就是存储数据时当前数据所在的内存地址的名字。

变量名 = 值                            #定义变量

变量名自定义 , 但是要满足标识符命名规则。

标识符命名规则:

  1. 有数字、字母、下划线组成
  2. 不能由数字、下划线开头
  3. 不能使用关键字
  4. 严格区分大小写

False        None        True        and        as        assert        break        class        continue        def        del        elif

else        except        finally        for        from        global        if        import        in        is        lambda        nonlocal

not        or        pass        ralse        return        try        while        with        yield

三、数据类型

  1. 数值:
  2. int(整型)  float(浮点型)
    1. 布尔型
    2. True (真)

False(假)

  • str (字符串)
  • list (列表)
  • set (集合)
  • dict (字典)
  • tuple (元组)

检测数据类型:type()

三、输出

格式化符号:

  1. %s:格式化输出字符串
  2. %d:格式化输出整数
  3. %f:格式化输出浮点数

f-字符串:   f ‘{ 表达式 }’

转移字符:\n : 换行; \t  :制表符

print结束符:print( ' 内容 ' ,end=" ")

四、输入

输 入: input( " 提示文字 " )

特 点:一般将input接受到的数据存储子到变量中;input接受任何数据默认是str

五、运算符的分类

1、算数运算符:

运算符 描述 实例
+ 1+1  输出结果为2
- 2-1   输出结果为1
* 2*2   输出结果为4
/ 10/2  输出结果为5
// 整除 9//4   输出结果为2
% 取余 9%4  输出结果为1
** 指数 2 ** 4 输出结果为16 ,即2*2*2*2
( ) 小括号 用来提高运行优先级
  • 混合运算优先级顺序:() 高于  **  高于  *   /   //   %  高于  +  -

2、赋值运算符

赋值:  =    将右侧的结果赋值给左侧的变量

3、复合赋值运算符

运算符 描述 实例
+= 加法赋值运算符 c +=a 等价于 c=c+a
-= 减法赋值运算符 c -= a 等价于 c=c-a
*= 乘法赋值运算符 c*=a   等价于 c = c*a
/= 除法赋值运算符 c/=a   等价于  c = c/a 
//=  整除赋值运算符 c//=a  等价于 c = c//a
%= 取余赋值运算符 c%=a 等价于 c = c%a
**= 幂赋值运算符 c**=a 等价于 c = c**a

4、比较运算符

  •  ==  判断相等
  •  !=   判断不等
  •  >    运算符左侧操作数结果是否大于右侧操作数结果,大于为True
  • <     运算符左侧操作数结果是否小于右侧操作数结果,小于为True
  • >=   运算符左侧操作数结果是否大于等于右侧操作数结果,大于等于为True
  • <=   运算符左侧操作数结果是否小于等于右侧操作数结果,小于等于为True

优先级:先算复合赋值符右侧的表达式;再算复合赋值运算的算数运算;最后再算赋值运算。

5、逻辑运算符

运算符 逻辑表达式 描述 实例
and x and y 布尔"与":有假则假 True and False ,返回False
or x or y 布尔"或":有真则真 True and False,返回True
not not x 布尔"非" not True,返回False;not False,返回True

数字之间的逻辑关系:

  • and运算符,只要有一个值为0,则结果为0,否则结果为最后一个非0数字
  • or运算符,只有所有值为0,则结果才为0,否则结果为第一个非0数字

六、条件语句

条件语句:即条件成立执行某些代码,条件不成立则不执行某些代码。

1、if ...:

if 条件:
    条件执行代码1
    ....

实例:上网

age = int(input("请输入您的年龄"))
if age >= 18:
    print("您的年龄是%s,已经成年,可以上网"%age)

print("系统关闭")

运行结果:

2、if...else...

if 条件:
    条件成立执行的代码1
    ...
else:
    条件不成立执行的代码1
    ...

实例:网吧上网

age = int(input("请输入您的年龄"))
if age >= 18:
        print("您的年龄是%s,已经成年,可以上网" % age)
else :
        print("您的年龄是%s,已经未成年,不可以上网" % age)

print("系统关闭")

执行结果:

注:如果某些条件成立执行了相关的代码,那么其他情况解释器根本不会执行。

3、多重判断

if 条件1:
    条件1成立执行的代码
    ...
elif 条件2:
    条件2成立执行的代码
    ...
...
else:
    以上条件都不成立执行的代码

实例:工龄

age = int(input("请输入您的年龄"))
if age < 18:
        print("您的年龄是%s,童工一名"%age)
elif age >= 18 and age <= 60:
        print("您的年龄是%s,合法工龄"%age)
else:
        print("您的年龄是%s,可以退休"%age)

执行结果:

4、if嵌套

if 条件1:
    条件1成立执行的代码

    if 条件2:
        条件2成立执行的代码

实例:坐公交

money = int(input("请输入您是否有坐公交的纸币(1代表有,0代表没有)"))
if money == 1:
        print("有钱,顺利上车!")
        seat = int(input("请输入是否有空座(1代表有,0代表没有)"))
        if seat == 1:
                print("有空座,可以坐下。")
        else:
                print("没有空座,站着。")
else:
        print("没钱,不能上车。")

执行结果:

5、三目运算符

三目运算符也叫做三元表达式。

条件成立执行的表达式 if 条件 else 条件不成立执行的表达式

七、循环语句

循环的作用:让我们高效的重复执行。

循环在Python中分为,while 和 for 两种。

1.while

while 条件:
    条件成立重复只执行的代码
    ...

实例:计算1-100累加和

i = 1    #循环的计数器
result = 0
while i<=100 :
        result += i
        i += 1
print("1-100累加和为:%s" %result)

执行结果:

实例2: 计算1-100之间偶数的累加和

i = 1    #循环的计数器
result = 0
while i<=100 :
        if i%2 == 0:
            result += i
        i += 1
print("1-100偶数累加和为:%s" %result)

执行结果

2、break和continue

break:终止此循环

    i = 1
    while i <= 5:
        if i == 4:
            print("吃饱了不吃了")
            break
        print("吃了第%s个苹果"%i)
        i +=1

执行结果:

continue:退出本次循环而进行下一次循环

    i = 1
    while i <= 5:
        if i == 4:
            print("吃到大虫子了,不吃了")
            i += 1
            continue
        print("吃了第%s个苹果"%i)
        i +=1

执行结果:

记得要在continue前修改计数器,不然会陷入死循环

3、while循环嵌套

while 条件1:
    条件1成立执行的循环语句

    while 条件2:
        条件2成立执行的循环语句

实例:打印出5×5的星星矩阵

    # 重复打印5行
    i = 0
    while i < 5:
        # 打印一行星星
        j = 0
        while j < 5:
            print("*" ,end="")
            j += 1
        # 每行结束都需要换行
        print()
        i += 1

执行结果:

4.for循环

for 临时变量 in 序列:
    重复执行的代码
    ...
str1 = 'python'
for i in str1:
        print(i)

执行结果:

6、for...else

for 临时变量 in 序列:
    重复执行的代码
    ...
else:
    循环正常结束之后要执行的代码

else:

  • while和for都可以配合else使用
  • else下方缩进的代码含义:当循环正常结束后执行的代码
  • break终止循环不会执行else下方缩进的代码
  • continue退出循环的方式执行else下方缩进的代码

八、字符串

字符串一般使用引号来创建。

字符串的下标从0开始

 

修改:通过函数的形式修改字符串中的数据。

  • replace():替换
字符串序列.replace(旧子串,新子串,替换次数)
mystr = "hello world and itcast and itheima and Python"
print(mystr.replace('and','he'))
print(mystr.replace('and','he',10))
print(mystr)

执行结果:

数量按照能否修改分为可变类型不可变类型。字符串属于不可变类型。

  • split():按照指定字符分割字符串。
字符串序列.split(分割字符,num)      #num表示的是分割字符出现的次数,即返回数据个数为num+1
    print(mystr.split('and'))
    print(mystr.split('and',2))
    print(mystr.split(' '))
    print(mystr.split(' ',2))

执行结果:

 

  • join():用一个字符或子串合并字符串,即是将多个字符串合并为一个新的字符串。
字符或子串.join(多字符串组成的序列)
    list1 = ["chuan","zhi","bo","ke"]
    t1 = ('aa','b','cc','ddd')
    print('_'.join(list1))     #结果 chuan_zhi_bo_ke
    print('...'.join(t1))   #结果 aa...b...cc...ddd

 

  • capitalize():将字符串第一个字符转换为大写。
print(mystr.capitalize())   #Hello world and itcast and itheima and python

capitalize()函数转换后,只字符串第一个字符大写,其他的字符全都小写。

  • title():将字符串每个单词首字母转换为大写
print(mystr.title())   #Hello World And Itcast And Itheima And Python

  • lower():将字符串中大写转小写
print(mystr.lower())   #hello world and itcast and itheima and python

  • upper():将字符串中小写转大写。
print(mystr.upper())   #HELLO WORLD AND ITCAST AND ITHEIMA AND PYTHON

  • lstrip():删除字符串左侧空白字符。
print(mystr.lstrip())    #hello world and itcast and itheima and Python   

  • rstrip():删除字符串右侧空白字符。
print(mystr.rstrip())    #     hello world and itcast and itheima and Python

  • strip() : 删除字符串两侧的空白字符
 print(mystr.strip())    #hello world and itcast and itheima and Python

  • ljust():返回一个原字符串左对齐,并使用指定字符(默认空格)填充至对应长度的新字符串
  • rjust():返回一个原字符串右对齐,并使用指定字符(默认空格)填充至对应长度的新字符串
  • center():返回一个原字符串居中对齐,并使用指定字符(默认空格)填充至对应长度的新字符串
    mystr = 'hello'
    print(mystr.ljust(10))
    print(mystr.ljust(10,'.'))
    print(mystr.rjust(10))
    print(mystr.rjust(10,'.'))
    print(mystr.center(10))
    print(mystr.center(10,'.'))

执行结果:

  • starswith():检查字符串是否以指定子串开头,如果设置开始结束下标,则在指定范围内检查
  • endswith():检查字符串是否以指定子串结尾。
    print(mystr.startswith('hello'))             #True
    print(mystr.startswith('hello',5,20))        #False
    print(mystr.endswith('Python'))              #True
    print(mystr.endswith('python'))              #False
    print(mystr.endswith('Python',2,20))         #False

  • isalpha():如果字符串至少有一个字符并且所有字符都是字母则返回True,否则返回False
  • isdigit():如果字符串只包含数字则返回True否则返回False
  • isalnum():如果字符串至少有一个字符并且所有字符都是字母或数字则返回True,否则返回False
  • isspace():如果字符串只包含空白,则返回True,否则返回False
    mystr1 = 'hello'
    mystr2 = 'hello12345'
    print(mystr1.isalpha())      #True
    print(mystr2.isalpha())      #False

    mystr1 = 'aaa12345'
    mystr2 = '12345'
    print(mystr1.isdigit())      #False
    print(mystr2.isdigit())      #True

    print(mystr1.isalnum())      #True
    print(mystr2.isalnum())      #True

    mystr1 = '1 2 3 4 5'
    mystr2 = '         '
    print(mystr1.isspace())      #False
    print(mystr2.isspace())      #True

 

 

posted on 2021-05-07 10:54  奶兔  阅读(97)  评论(0编辑  收藏  举报