一、运算符

1. 基本算术运算符

>>> 10+212>>> 10-46>>> 10/33>>> 10/3.03.3333333333333335>>> 10%31>>> 2**38>>> n=2>>> n+=3>>> n+=3>>> n8

2. 值判断

运算符 , ==, >=, <= 和 != 将比较两个对象的值。 两个对象不要求为相同类型。

符号意义==等于!=不等于<>python2.x中不等于>大于=大于等于<=小于等于

3.逻辑判断和成员判断

符号意义and并的关系or或not否in属于(成员判断)a in li    a在li中>>> n=1>>> not nFalse>>> n=0>>> not nTrue>>> n="">>> not nTrue>>> 'h' in 'hello'True

运算符 not 将在其后跟的 参数 为假值时产生 True,否则产生 False。

表达式 x and y 首先对 x 求值;如果 x 为假则返回 该值;否则对 y 求值并返回 其结果值。

表达式 x or y 首先对 x 求值;如果 x 为 真 则返回该 值;否则对 y 求值并返回其 结果值。

请注意 and 和 or 都不限制其返回的值和类型必须为 False 和 True,而是返回最终求值的参数。 此行为是有必要的,例如假设 s 为一个当其为空时应被替换为某个默认值的字符串,表达式 s or 'foo' 将产生希望的值。 由于 not 必须创建一个新值,不论其参数为何种类型它都会返回一个布尔值(例如,not 'foo' 结果为 False 而非 ''。)

4. 一切都是假象

在执行布尔运算的情况下,或是当表达式被用于流程控制语句时,以下值会被解析为假值: False, None, 所有类型的数字零,以及空字符串和空容器(包括字符串、元组、列表、字典、集合与冻结集合)。

所有其他值都会被解析为真值。

数据类型代码表示形式布尔Falsenull类型None整型0浮点型0.0空字符串‘’空列表[]空元组()空字典{}空集合set()

5. 链式判断




python 在numpy ndarray中计算并输出百分比 python中计算n!_字符串


条件表达式

条件表达式(有时称为“三元运算符”)在所有 Python 运算中具有最低的优先级。

表达式 x if C else y 首先是对条件 C 进行求值。 如果 C 为真,x 将被求值并返回其值;否则将对 y 求值并返回其值。

>>> x,y=20,50>>> small=x if x>> small20

二、流程控制语句

判断

基本的语法格式:

if 条件语句: # 注意这里必须以英文的冒号结束

条件语句为真时,执行的语句

n = input("输入数字>>:")n = int(n)    # input 接收到的数据,都是字符串类型if n == 5:print('相等')n = input("输入数字>>:")n = int(n)if n == 5:print('相等')else:               # else 后边必须有英文的冒号print('No')n = input("输入数字>>:")# 必须输入数字来测试n = int(n)if n == 5:print('ok')elif n > 5:print('大了')else:    print('小了')

嵌套

n = input("输入数字>>:")# n.isdigit() 用于判断 n 的值是否全部都是纯数字, # 全部是数字才能使用 int()  转换, 比如: int("123")  可以转成 123if n.isdigit():    f_n = int(n)    if f_n == 5:        print('ok')    elif f_n > 5:        print('大了')    else:        print('小了')else:    print('请输入数字')循环while True:    n = input("输入数字>>:")    n = int(n)    if n == 5:        print('相等')        break    elif n > 5:        print('大了')    else:        print('小了')

假设上面的小游戏,只能玩 3 次,如何处理?

m = 1while m <= 3:    m += 1    n = input("输入数字>>:")    n = int(n)    if n == 5:        print('相等')        break    elif n > 5:        print('大了')    else:        print('小了')

迭代

什么是迭代

迭代 是重复反馈过程的活动,其目的通常是为了接近并到达所需的目标或结果。

每一次对过程的重复被称为一次“迭代”。

for 循环(英语:for loop)

是一种编程语言的迭代陈述,能够让程式码反复的执行。

它跟其他的循环,如while循环,最大的不同,是它拥有一个循环计数器。

这使得for循环能够知道在迭代过程中的执行顺序,记住上次被循环元素的位置。

for i in 'hello world':print(i)range(n)

产生一个可被循环的整数序列,默认序列的元素从 0 开始

产生的元素数量是 n 个

for i in range(2):    print(i)输出01

指定开始位置的数字和结束位置的数字, 输出的值中不包含结束位置的数字。

这个 位置 指的就是 索引号的意思。

for i in range(1, 3):    print(i)输出12

break 和 continue

for i in range(0, 10):    print(i)    if i < 3:        inp_num = int(input(">>:").strip())        # inp_num = int(inp_num)        if inp_num == 15:            print('You get it')            break        elif inp_num > 15:            print("高了")        else:            print("低了")    else:        print("Game over")        breakfor i in range(2, 10, 2):    print("循环到", i)    if i == 4:        continue    print(i)    if i == 6:        break

range(开始索引号:结束索引号:步长)

for … else

•1. 当 for 循环体正常执行完毕时,再执行一下 else 后面的代码

•2. 当 执行了 break 后,就不再执行 else 后面的代码了

for i in range(20):    if i == 10:        print('get it')        n = i        breakelse:    print("Nothing")