Python学习笔记(2)操作符和数据类

发布时间:2019-02-28 18:39:04编辑:auto阅读(2248)

    2019-02-25

    一:

    (1)常用操作符:

      ① 算数操作符:=-*/%(求余)、**(幂运算)、//(地板除法:计算结果取比商小的最大整型)

      注意:幂运算操作符比其左侧的一元运算符的优先级高,比其右边的一元运算符优先级低。

      测试代码:

    num = -4 ** 2
    num2 = 4 ** -2
    print(num,num2)

      运行结果:

    -16 0.0625

      ② 比较操作符:<<=>>===!=

      ③ 逻辑操作符:

        1) and:两边同时为真,结果才为真。

      测试代码:

    num = 5
    if num >3 and num<4:
        print(num - 3)
    else:
        print(num - 1)

      运行结果:

    4

        2) or:一边为真,结果就为真。

      测试代码:

    num = 5
    if num >3 or num<4:
        print(num - 3)
    else:
        print(num - 1)

      运行结果:

    2

        3) not:得到一个和操作数相反的布尔类型的值。

      测试代码:

    _age = 12
    age = int(input("age:"))
    if age == _age:
        print("yes,you are right")
    else:
        print(not age)

      运行结果:

    age:50
    False
    age:12
    yes,you are right

      ④ 优先级:幂运算>正负号>算数操作符>比较操作符>逻辑操作符

    二:

    (1)变量:

      ① 把一个值赋值给一个名字时,系统会为名字开辟一块内存,这块内存称为变量,这个操作叫做‘给变量赋值’。

      ② 变量使用及其命名。

        1) 变量必须先赋值再使用。

        2) 变量名可以使用字母、数字、下划线,但不能以数字开头。

        3) 等号(=’)是赋值的意思,左边是名字,右边是值。

    2)字符格式化输出:

      ① 占位符:%S,%d,%f

      ② 数字类型:type()函数可以查看数据类型。

        1) 整型(int:py3中统一是长整型。

      1. 整型(int)    范围: -2**31 ~ 2e**31-1
      2. 长整型(long)范围: -2**63 ~ 2**63-1             

        2)布尔型(bool):只有两种状态。

      1. Ture(真)相当于整数值1
      2. False(假)相当于整数值0

        3)浮点型(float):

      1. e的含义,1.2*10^4 = 1.2e4

        4)类型转换:

      1. Int():将一个浮点数或者一个字符串转换为一个整数,如果是浮点数转换为整数,那么python3会把小数点后面的数据直接去掉。
      2. float():将一个整数或者一个字符串转换为一个浮点数。
      3. str():将一个数或者其他类型的数据转换为一个字符串。  

      测试代码:

    num = input("num:")
    print(int(num) + int(num))
    print(float(num) + float(num))
    print(str(num) + str(num))

      运行结果:

    num:12
    24
    24.0
    1212 

      ③字符串

      1. 原始字符串:在字符串前面加一个英文字母r’(无论是否原始字符串,都不能以反斜杠作为结尾,因为反斜杠作为结尾表示字符串还没有结束,换行继续的意思。)
      2. 字符串的拼接:

            a) 直接通过加号(+)操作符连接。这种方法简单直观,但是当拼接很多字符串时效率低,因为python中字符串是不可变的类型,使用‘+’进行字符串的拼接是会生成一个新的字符串,新的字符串要重新申请内存,当要拼接多个字符串时,效率低下也就在意料之中了。

            b)%s占位符连接。用符号‘%’连接一个字符串和一组变量,字符串中的特殊标记会被自动用右边变量组中的变量替换。

      测试代码:

    name   =    input("name:  ")
    age    =    input("age:   ")
    school =    input("school:")
    salary =    input("salary:")
    
    if salary.isdigit():
        salary = int(salary)
    else:
        exit("you must input digit!!!")
    msg = '''
    ---------------info of %s---------------|
    name:   %s                              |
    age:    %s                              |
    school: %s                              |
    salary: %s                              |
    ----------------------------------------
    '''%(name,name,age,school,salary)
    print(msg)

      运行结果:

    name:  PegasusK
    age:   21
    school:university
    salary:200
    
    ---------------info of PegasusK---------------
    name:   PegasusK                              
    age:    21                              
    school: university                              
    salary: 200                              
    ----------------------------------------

关键字