python入门2——分支与循环
1.首先谈一下python的运算符和优先级,
+,-,*,/这是很简单的算术运算
“//” 这个代表整数的除法,就是说a/b的结果会被取整
“两个×” 这是幂远算的意思,关于幂远算有个点要注意,就是
如果-2**2,是个表示的是先做幂远算再做-。
如果 2 幂-2,这个表示的是2的-2次方。
程序如下所示:
>>> 2**-2
0.25
>>> -2**2
-4
2.再谈一下运算的优先级,那么
最高级:**
正负号,有特例
* / //
+ -
比较运算符
逻辑运算符
3.分支和循环结构:
常见的 if-else-if-else 结构,这个是很简单的。
但考虑到python中关于空格的定义,那么可以直接用 if-elif-else 这个结构来写,这样的话每行就可以都对其了。
score = int(input('输入:'))
if 100>= score >= 90:
print('A')
elif 90>= score >= 80:
print('B')
else :
print('输入错误')
如果还是用if-else-if-else的话
每一对if-else必须要对其,否则会报错
score = int(input('输入:'))
if 100>= score >= 90:
print('A')
else :
if 90>= score >= 80:
print('B')
else :
print('输入错误')
4.三元条件表达式
m = x if x<y else y
意思很简单,就是先做if-else,如果条件成立,就要输出x,否则的话输出y
这里还要说一个快捷键 alt+p,作用:重复上面一条代码
详见下方代码:
>>> m= 1 if 2<3 else 4
>>> print(m)
1
>>> m= 1 if 4<3 else 4
>>> print(m)
5 assert,这是用来检查出错
range函数,
range([start] stop,[step])
如果是range(10)
结果为[1, 2, 3, 4, 5, 6, 7, 8, 9]
要想显示出来的话用 list(range(1,10))就可以了
结果为[1, 2, 3, 4, 5, 6, 7, 8, 9]
如果是 list(range(1,10,1))
结果为:[1, 2, 3, 4, 5, 6, 7, 8, 9]
range函数经常和for连起来用,
print('python_ujs-lili')
for i in range(10) :
if i%2 != 0:
print(i) #判读是不是奇数
i += 2
print(i)
#这个程序的输出就是:先判读是不是奇数,是奇数就输出技术,之后再加2再输出,如果不是奇数也会加2在输出。那么这就没什么意思
结果是
2
1
3
4
3
5
6
5
7
8
7
9
10
9
11
#修改一下的话
print('python_ujs-lili')
for i in range(10) :
if i%2 != 0:
print(i) #判读是不是奇数
continue
i += 2
print(i)
#仅仅是加了一个continue,意思就是说,输出奇数之后,就不往下做了,直接跳到for循环,举个例子,i=2,不是奇数,就用不上continue,因为continue是跟着if的,这时就会输出4
结果如下:
2
1
4
3
6
5
8
7
10
9
6.for循环,
具体格式如下:
for 变量 in 表达式 :
循环
m='lili'
for i in m :
print(i,end=' ')
l i l i
#i和each都一样的作用
for each in m :
print(each,len(each))
l 1
i 1
l 1
i 1
定义一个列表,用 [ ],这个和matlab比较像,刚才的例子m仅仅是一个字符串,所有字长都是1,
member=['lili','dingxiuxiu']
for i in member :
print(i,len(i))
#结果是
lili 4
dingxiuxiu 10
那这个字长就是变化的