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

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                              
----------------------------------------
点赞