一、运算符
In [2]: 1+1
Out[2]: 2
In [3]: 2-1
Out[3]: 1
In [4]: 3*3
Out[4]: 9
In [5]: 4/2
Out[5]: 2.0
In [6]: 4//2
Out[6]: 2
In [7]: 5%3
Out[7]: 2
In [8]: 2**3
Out[8]: 8
In [10]: n=5
In [11]: n+=2
In [12]: n
Out[12]: 7
In [13]: n+=2
In [14]: n
Out[14]: 9
二、判断值
运算符 <, >, ==, >=, <= 和 != 将比较两个对象的值。 两个对象不要求为相同类型。
== 等于
!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于
三、逻辑判断和成员判断
and 与
or 或
not 非
in 属于(成员判断)a in li
运算符
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
而非''
。)
四、一切都是假象
在执行布尔运算的情况下,或是当表达式被用于流程控制语句时,以下值会被解析为假值:
False
,None
, 所有类型的数字零,以及空字符串和空容器(包括字符串、元组、列表、字典、集合与冻结集合)。
所有其他值都会被解析为真值。
数据类型 代码表现形式
布尔 False
null类型 None
整形 0
浮点型 0.0
控字符串 ''
空列表 []
空元组 ()
空字典 {}
空集合 set()
五、链式判断
10>n>3
条件表达式
条件表达式(有时称为“三元运算符”)在所有 Python 运算中具有最低的优先级。
表达式 x if C else y 首先是对条件 C 进行求值。 如果 C 为真,x 将被求值并返回其值;否则将对 y 求值并返回其值。
[on_true] if [expression] else [on_false]
x, y = 50, 25
small = x if x < y else y //如果x<y就x为真,否则y
流程控制语句
判断
基本语法格式:
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.isdigit() 用于判断 n 的值是否全部都是纯数字,
全部是数字才能使用 int() 转换, 比如: int("123") 可以转成 123
if 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 = 1
while 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循环能够知道在迭代过程中的执行顺序,记住上次被循环元素的位置。
In [15]: for i in 'hello world':
...: print(i)
...:
h
e
l
l
o
w
o
r
l
d
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")
break
================================
for i in range(2, 10, 2):
print("循环到", i)
if i == 4:
continue
print(i)
if i == 6:
break
range(n)
产生一个可被循环的整数序列,默认序列的元素从 0 开始
产生的元素数量是 n 个
range(开始索引号:结束索引号:步长)
In [16]: for i in range(2):
...: print(i)
...:
0
1
指定开始位置的数字和结束位置的数字, 输出的值中不包含结束位置的数字。
这个 位置 指的就是 索引号的意思
In [17]: for i in range(1, 3):
...: print(i)
...:
1
2
In [20]: for i in range(0, 3):
...: print(i)
...:
0
1
2
for … else
•1. 当 for 循环体正常执行完毕时,再执行一下 else 后面的代码
•2. 当 执行了 break 后,就不再执行 else 后面的代码了
for i in range(20):
if i == 10:
print('get it')
n = i
break
else:
print("Nothing")
网友评论