语句与表达式
代码规范
1.pep8 规范
2.在某些语句块,如循环中,缩进4个空格
3.一行不超过79个字符(不是绝对)
4.把握好什么时候该空行,空几行
赋值语句
1.基本赋值语句赋值
2.序列赋值,方式很灵活,可以用元组、列表、字符串甚至交叉使用:
In[2]: [x,y,z]=[1,2,3]
In[3]: print("{},{},{}".format(x,y,z))
1,2,3
In[10]: x,y=y,x
In[11]: x
Out[11]: 2
In[12]: y
Out[12]: 1
In[7]: [a,b,c]=(1,2,3)
In[8]: print("{},{},{}".format(a,b,c))
1,2,3
In[13]: a,b,c='abc'
print("{},{},{}".format(a,b,c))
a,b,c
可以使用*变量的方式得到剩余的值组成的列表
In[16]: a,b,*c="abcdefg"
In[17]: print("{},{},{}".format(a,b,c))
a,b,['c', 'd', 'e', 'f', 'g']
In[18]: a,*b,c="abcdefg"
In[19]: print("{},{},{}".format(a,b,c))
a,['b', 'c', 'd', 'e', 'f'],g
如果没有变量就会得到空列表
In[20]: a,b,*c="ab"
In[21]: print("{},{},{}".format(a,b,c))
a,b,[]
注意的问题:字符串赋值
In[33]: a='qwer'
In[34]: b='qwer'
In[35]: a==b
Out[35]: True
In[36]: a is b
Out[36]: True
In[40]: b='qwerasdf..'
In[41]: a='qwerasdf..'
In[42]: a is b
Out[42]: False
3.多目标赋值
In[43]: a=b=[]
In[44]: a.append(3)
In[45]: print("a={},b={}".format(a,b))
a=[3],b=[3]
In[46]: a=[]
In[47]: b=[]
In[49]: a.append(3)
In[50]: print("a={},b={}".format(a,b))
a=[3],b=[]
如果使用序列赋值,和分别赋值效果一样
In[51]: a,b=[],[]
In[52]: a.append(3)
In[53]: print("a={},b={}".format(a,b))
a=[3],b=[]
表达式
1.函数调用
2.字面值
3.方法调用
4.打印
print的常见参数:1.sep=‘分隔符’,2.end=‘终止符’,3.file=指定文件
流程控制语句
大部分流程语句和一般的编程语言一样,需要注意的:
1.pass是没什么可写的时候的占位符
2.enumerate()获得遍历的索引和值
s="abcdefgh"
for (index,item) in enumerate(s):
print('{}){} '.format(index,item))
结果:
0)a
1)b
2)c
3)d
4)e
5)f
6)g
7)h