zoukankan      html  css  js  c++  java
  • python基础学习2

    python中的运算符

    1、算术运算符:用来做算术运算的符号

        ①、+ :求和,也可以做连接符 

        ②、 - :求差

        ③、 * : 求积

        ④、 / :求商

        ⑤、% :取余

        ⑥、//  :取整

        ⑦、**  :次方

        注意:只能是数值

    print(3*3) #求积结果:9
    print(9/2) #相除结果:4.5
    print(3**4) #3的4次方,结果:81
    print(9//4) #小数部分直接丢掉,取整结果:2
    print(13%3) #取余结果:1
    

      运行结果是

    9
    4.5
    81
    2
    1
    

      比较运算符:用来比较(值只可能是布尔类型[真True或假False])

        ==    >    <    >=    <=    !=(不等于)

        注意:== 比较字符串时,比较的是字符串的内容,其他比较都是数值(字符串的长度)

    score = 80
    print(score > 90)
    print(score == 80)
    print(score >= 60)
    print(score != 80)
    

      运行结果:

    False
    True
    True
    False
    

      赋值运算符

        =    +=(可以做连接符)    -=    *=    **=    /=    %=    //=

        注意:赋值运算符的左侧一定是个变量,右侧一定要有个数据

        = :将右边的值给左边;其他:将两边的结果给左边

    num = 3 #赋值
    num += 6  #赋值
    print(num)
    num2 = 3 #赋值
    num2 = num2 + 6 #赋值,等同于 num+=6(num+=6效率高些)
    print(num2)
    a = 10
    a -= 5 #等同于 a = a - 5
    print('-=的值:',a)
    b = 10
    b *= 5 #等同于 b = b * 5
    print('*=的值:',b)
    c = 12
    c /= 5 #等同于 c = c / 5
    print('/=的值:',c)
    d = 11
    d %= 5 #等同于 d = d % 5
    print('%=的值:',d)
    e = 10
    e **= 5  #等同于 e = e * e * e * e * e
    print('**=的值:',e)
    f = 11
    f //= 5  #等同于 f = f // 5
    print('//=的值:',f)
    
    #+= 用于连接字符串
    strVale = '我爱你'
    strVale+='北京'
    print(strVale)
    

      运行结果:

    9
    9
    -=的值:5
    *=的值:50
    /=的值:2.4
    %=的值:1
    **=的值:100000
    //=的值:2
    我爱你北京
    

      逻辑运算符:判断2个布尔值的关系

        and且(&)    or或(|)    not非

        注意:逻辑运算符 两侧必须是布尔值

    score = 80
    sex = '男'
    print(score>=60 and sex=='女')  #建议此方法
    print((score>=60) & (sex=='女'))
    print(score>=60 or sex=='男')  #建议此方法
    print((score>=60) | (sex=='男'))
    print(not(score>=60))
    

      运行结果:

    False
    False
    True
    True
    False
    

      位运算法符

        &    |    ^


    python表达式和语句

        python表达式和语句没有明显的划分

        python表达式:是值,变量和操作符(或叫运算符)的组合。单独的一个值是一个表达式,单独的变量也是一个表达式

        python语句:是一段可执行代码。常见的有赋值语句、if语句、while语句、for语句、return语句、import语句等等...

    python赋值

        变量名在首次赋值时会被创建,变量名在引用(使用)前必须先赋值

    1、普通赋值

        请参照:python中的运算符 -> 赋值运算符,的讲解!

    2、序列赋值

        python把赋值运算符右侧元组(列表)内的值和左侧元组(列表)内的变量相互匹配,然后每一次赋一个值

        注意:左右元素的个数要相等,一一对应!

    #序列赋值
    a,b=1,2  #元组赋值 等同于  (a,b) = (1,2)
    print(a,b)
    [c,d] = [100,200]  #列表赋值
    print(c,d)
    e,f,g = '我爱你'
    print(e,f,g)
    

      运算结果:

    1 2
    100 200
    我 爱 你
    

      扩展解包赋值

        一个带星号的变量名 ,收集了序列中没有赋值给其他名称的所有项

        注意:只能存在一个*号,多个*会造成无法区分范围

    a,b,c = '你好啊'
    print(a,b,c)
    a1,b1,*c1 = '你好啊TOM'
    print(a1,b1,c1)  #你 好 ['啊', 'T', 'O', 'M']
    a2,*b2,c2 = '你好啊TOM'
    print(a2,b2,c2)  #你 ['好', '啊', 'T', 'O'] M
    #a3,*b3,*c3 = '你好啊TOM'  #报错,只能有一个 * 号
    #print(a3,b3,c3)
    

      运行结果:

    你 好 啊
    你 好 ['啊', 'T', 'O', 'M']
    你 ['好', '啊', 'T', 'O'] M
    

      多目标赋值(不建议使用)

    num1,num2 = 3,4  #第一种方式
    print(num1)
    print(num2)
    num3 = num4 =5  #第二种方式
    print(num3)
    print(num4)
    

      运行结果:

    3
    4
    5
    5
    

      条件语句 (if 语句控制程序的执行)

        通过一条或多条语句的执行结果(True或False)来决定执行的代码块

        if 语句的判断条件可以用>、<、==、>=、<=来表示其关系。

        如果判断条件有多个时,可以使用and/or连接。

        注意:

        python 并不支持 switch 语句,所以多个条件判断, 只能用 elif 来实现。

        Python程序语言指定任何非0和非空(None)值为true,0 或者 None为false。

        每个选择分支,执行内容可以多行,以缩进来区分表示同一范围。

    1、if 语句:格式一

        if 判断条件:

            执行语句……

        解释:判断条件成立(值为True),执行执行语句;否则不执行执行语句。

    sex = '男'
    if sex == '男':
        print('语句执行...')
    print('程序语句结束!')
    print('----------------')
    if sex == '女':
        print('语句执行...')
    print('程序语句结束!')
    

      运行结果:

    语句执行...
    程序语句结束!
    ----------------
    程序语句结束!
    

      if 语句:格式二

        if 判断条件:

            执行语句1…… 

        else:

            执行语句2……

        解释:其中"判断条件"成立时(非零),则执行后面的语句(执行语句1),else 为可选语句,当"判断条件"不成立时,执行(执行语句2)相关语句

        注意:此格式的if语句,肯定有一个分支会被执行...

    #肯定有一个会被执行...
    sex = '男'
    if sex == '男':
        print('sex的值是男')
    else:
        print('sex的值是女')
    print('----------------')
    sex = '男'
    if sex == '女':
        print('sex的值是女')
    else:
        print('sex的值是男')
    

      运行结果:

    sex的值是男
    ----------------
    sex的值是男
    

      

    if 语句:格式三

        当判断条件为多个值时,可以使用以下形式:

        if 判断条件1: 

            执行语句1…… 

        elif 判断条件2: 

            执行语句2…… 

        elif 判断条件3: 

            执行语句3…… 

        else: 

            执行语句4…… 

    score = 70
    if score > 100:
        print('非常优秀')
    elif score >80 :
        print('大于80分,优良')
    elif score >=60:
        print('大于等于60分,良好')
    else:
        print('不及格')
    

      运行结果:

    大于60分,良好
    

      if 语句:格式四

        如果判断条件有多个时,可以使用and/or连接。

        当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比and/or要优先判断。

    # 判断值是否在0~10之间
    num01 = 9
    if num01 >= 0 and num01 <= 10:
        print ('Yes')
    else:
        print ('no')
    print('----------------')
    # 判断值是否在0~5或者10~15之间
    if (num01 >= 0 and num01 <= 5) or (num01 >= 10 and num01 <= 15):
        print ('hello')
    else:
        print ('undefine')
    

      运行结果:

    Yes
    ----------------
    undefine
    

       python 复合布尔表达式计算采用短路规则,即如果通过前面的部分已经计算出整个表达式的值,则后面的部分不再计算。

    a=0
    b=1
    #没报错,说明 b / a > 2没执行
    if ( a > 0 ) and ( b / a > 2 ):
        print ("yes" )
    else:
        print ("no")
    #报错, b / a > 2 执行啦
    a=0
    b=1
    if ( a > 0 ) or ( b / a > 2 ):
        print ("yes")
    else :
        print ("no")
    

      运行结果:

    no
    Traceback (most recent call last):
      File "../demoTest02.py", line 152, in <module>
        if ( a > 0 ) or ( b / a > 2 ):
    ZeroDivisionError: division by zero
    

      if 语句:格式五

        在嵌套 if 语句中,可以把 if...elif...else 结构放在另外一个 if...elif...else 结构中。

        if 表达式1: 

            语句 

            if 表达式11: 

                语句 

            elif 表达式22: 

                语句 

            else: 

                语句 

        elif 表达式2: 

            语句 

        else: 

            语句

        注意:只有进入外层的if,才有可能执行内层的if

    score = 90
    sex = '男'
    if score > 80:
        print('进入国家队')
        if sex == '男':
            print('男子队')
        else:
            print('进入女子队')
    else:
        print('淘汰掉...')
    

      运行结果:

    进入国家队
    男子队
    

      if 语句:格式六 (不建议使用)

        可以在同一行的位置上使用if条件判断语句

    var = 100
    # if后面只有一条语句,可以写在一行
    if ( var  == 100 ) : print ("变量 var 的值为100")
    

      运行结果:

    变量 var 的值为100

        注意:Python程序语言指定任何非0和非空(None)值为true,0 或者 None为false

    if True:
        print('123')
    if 124:
        print('123')
    

      运行结果:

    123
    123
    

      循环语句 (允许执行一个语句或语句组,多次)

        Python提供了两种循环语句:while循环 for循环

    while循环

        判断条件为True时执行一次执行语句,然后再次判断条件。直到判断条件假False时,循环结束。

        注意:使用while循环时别忘了写条件控制语句(循环退出的条件),否则会变为死循环。

        while 判断条件:

            执行语句……

        案例1:输出0到10的整数

    num01 = 0
    while num01 <= 10 :
        print(num01)
        num01 += 1   #条件控制语句
    print('循环结束...')
    

      运行结果:

    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    循环结束...  
    

      案例2:输出0到10的偶数 

    #输出0到10的偶数
    num01 = 0
    while num01 <= 10 :
        if num01 % 2 ==0:
            print(num01)
        num01 += 1   #条件控制语句
    print('循环结束...')
    

      运行结果:

    0
    2
    4
    6
    8
    10
    循环结束..
    

      案例3:while … else 在循环执行结束后执行 else 语句块

    #while … else 在循环执行结束后执行 else 语句块
    num01 = 0
    while num01 <= 10 :
        if num01 % 2 ==0:
            print(num01)
        num01 += 1   #条件控制语句
    else:
        print('循环结束...')
    

      运行结果:

    0
    2
    4
    6
    8
    10
    循环结束..
    

      案例4:while 后面只有一条语句,可以写在一行

    #while 后面只有一条语句,可以写在一行
    #不知道循环次数时,条件用True,内部控制循环退出...
    #本案例的执行结果是,死循环......
    while True: print('循环中.....')
    

      for循环

        for  变量  in 序列: 

            语句

     注意:in:判断一个变量是否在序列中

    1、简单应用

    nums = [1,5,7,2,10]
    for item in nums:
        print(item)
    

      运行结果:

    1
    5
    7
    2
    10
    

      range() 代表整数区间

    #range()只有一个参数:左边界默认从0开始,右边界为指定的值的前一个数
    num1 = range(3)
    for item in num1:
        print(item)
    print('-------------')
    #range()有两个参数,分别指定左右边界,但右边界为指定的值的前一个数
    num2 = range(1,3)
    for item in num2:
        print(item)
    print('-------------')
    #range()有三个参数,第三个参数代表步长
    num3 = range(1,10,2)
    for item in num3:
        print(item)
    

      运行结果:

    0
    1
    2
    -------------
    1
    2
    -------------
    1
    3
    5
    7
    9
    

      else中的语句会在循环正常执行完的情况下执行

    #获得序列的索引
    numbers = [1,5,7,2,10]
    for item in range(len(numbers)):
        print(item)
    else:
        print('循环结束')
    

      运行结果:

    0
    1
    2
    3
    4
    循环结束
    

      循环嵌套

      外套环循执行一次,内层循环一轮

      打印图形,外层控制行数,内层控制每行的*的个数

      ①、简单案例

    for x in ['田径队', '游泳队', '篮球队']:
        for y in ['第一名', '第二名', '第三名']:
            print (x + y)
    

      运行结果:

    田径队第一名
    田径队第二名
    田径队第三名
    游泳队第一名
    游泳队第二名
    游泳队第三名
    篮球队第一名
    篮球队第二名
    篮球队第三名
    

    打印4行5列矩形*号

    #打印4行5列矩形*号
    for x in range(4):
        for y in range(5):
            print('*',end="")
        print()
    

      运行结果:

    *****
    *****
    *****
    *****
    

      打印8行直角三角形*号

    #打印8行直角三角形*号
    for j in range(1,9):
        for i in range(j):
            print("*",end="")
        print()
    

      运行结果:

    *
    **
    ***
    ****
    *****
    ******
    *******
    ********
    

      打印乘法口诀表

    #打印乘法口诀表
    for j in range(1,10):
        for i in range(1,j):
            print("{0}*{1}={2};	".format(i,j,j*i),end="")
        print()
    

      运行结果:

    1*2=2;  
    1*3=3;  2*3=6;  
    1*4=4;  2*4=8;  3*4=12;  
    1*5=5;  2*5=10;  3*5=15;  4*5=20;  
    1*6=6;  2*6=12;  3*6=18;  4*6=24;  5*6=30;  
    1*7=7;  2*7=14;  3*7=21;  4*7=28;  5*7=35;  6*7=42;  
    1*8=8;  2*8=16;  3*8=24;  4*8=32;  5*8=40;  6*8=48;  7*8=56;  
    1*9=9;  2*9=18;  3*9=27;  4*9=36;  5*9=45;  6*9=54;  7*9=63;  8*9=72;
    

      循环控制语句

    1、break语句用来终止所在的循环语句

    #num的值会随着循环增大,在增大到5的时候,遇到break,循环退出
    num = 0
    while True:
        if num == 5:
            break
        print(num)
        num += 1
    print('-------------------')
    #在嵌套循环中,break只退出,break语句所在的循环,导致整个内层循环只执行了一次
    for j in range(3):
        for x in range(3):
            print('hello...')
            break
    

      运行结果:

    0
    1
    2
    3
    4
    -------------------
    hello...
    hello...
    hello...
    

      continue语句用来跳出所在循环体的本次循环,继续下一次循环

    #到8就跳过
    num02 = 0
    while num02 <= 10:
        if num02 ==8:  
            num02 +=1
            continue #在num02等于8时,退出当次循环,继续下一次循环
        print(num02 )
        num02 +=1
    print('程序结束')
    

      运行结果:

    0
    1
    2
    3
    4
    5
    6
    7
    9
    10
    程序结束
    

      



  • 相关阅读:
    完成了一次子网站向顶级网站的迁移
    Sharepoint中子网站迁移到顶级网站的方法
    Chain Of Responsibility——设计模式学习笔记
    短信PDU编码解析
    Decorator模式——设计模式学习笔记
    adb常用命令和logcat使用
    Explicit——谨慎定义隐式类型转换函数
    FlyWeight模式——设计模式学习笔记
    Facade模式——设计模式学习笔记
    宏——#define与#undef
  • 原文地址:https://www.cnblogs.com/zhuhuibiao/p/12008157.html
Copyright © 2011-2022 走看看