sys.getrefcount() 可以用于查看某个对象的引用个数。
列表和字典都支持两种类型的复制。浅复制和深复制。
语句;
赋值语句
调试
if/elif/else 条件判断
for/else 序列迭代
while/else 普通循环
pass 占位符
break
continue
def
reture
yield
global 命名空间
raise 触发异常
import
from 模块属性访问
class 类
try/except/finally 捕捉异常
del 删除引用
assert 调试检查
with/as 环境管理器
--------------------------------------------
赋值语句:
隐式赋值: import from def class for 函数参数
元组和列表分解赋值:
当赋值符号(=)的左边为元组或列表时,python 会按照位置把右边的对象和左边的目标至左 而右地逐一配对。个数不同时会触发异常,此时可以用切片方式进行。
多重赋值
加强赋值 += -=
条件表达式:
if elif else
三元条件表达式: x if y else z 如果x满足y表达式,那么就为x 否则就为z
while
while xxx
do
else
yyy
while 里面的循环中else是可选项。当while循环遇到错误时退出while循环,执行else语句。
并且,else语句仅此执行一次。
break 跳出最内循环;
continue 跳到最近层循环的开始处;
pass 占位语句;
else 当循环是正常执行完成,就会执行else里的语句。如果是break了循环,那么else里的语句 将不会被执行。
------------------------------------------------------------------------------
用python计算从1到100的偶数之和:
>sum([i for i in range(1,100)if i % 2==0])
这样及可。
In [1]: sum ([i for i in range(1,100)if i % 2==0])
Out[1]: 2450
In [2]:
-------------------------------------------------------------------------------------
求逐个显示出一个列表中的元素,并在最后显示出总个数:
In [61]: print list
['yy', 'x', 'opp']
方法一:
In [62]: while list:
....: print list[0]
....: list.pop(0)
....: else:
....: print len(d1)
....:
yy
x
opp
3
方法二:
count=0
while count<len(list):
print list[count]
count +=1
else:
print len(list)
及:
In [71]: count=0
In [72]: while count<len(list):
print list[count]
count +=1
....: else:
....: print count
....:
yy
x
opp
3
--------------------------------------------------------
创建一个包括1到100中所有奇数的列表:
方法一、
list1=[i for i in range(1,100)if i % 2 !=0]
print list1
及:
In [85]: l1=[i for i in range(1,100)if i % 2 !=0]
In [86]: print l1
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99]
In [87]:
方法二、
list2=[] 设置一个空列表
x=1
while x<100
list2.append(x)
x +=2
else:
print list2
及:
In [107]: list2=[]
In [108]: x=1
In [109]: while x<100:
.....: list2.append(x)
.....: x +=2
.....: else:
.....: print list2
.....:
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99]
In [110]:
-----------------------------------------------------------------------------
将两个len()相等的列表做成字典:
In [160]: l1=[0,1,2,3,4,5,6]
In [161]: l2=['Sun','Mon','Tue','Web','Tue','Fri','Sat']
In [162]: d1 = {}
In [163]: count=0
In [164]: if len(l1)==len(l2):
.....: while count<len(l1):
.....: d1[l1[count]] =l2[count]
.....: count +=1
.....: else:
.....: print d1
.....:
{0: 'Sun', 1: 'Mon', 2: 'Tue', 3: 'Web', 4: 'Tue', 5: 'Fri', 6: 'Sat'}
这里面有个知识点:
d2 = {} 设置d2为空字典
d2[1] = 'x' 当一个列表赋值给一个值时,就会组成字典元素中的一组。
print d2
{1:'x'}
注意d2 字典名 和 d2 列表名要一样。
――――――――――――――――――――――――――――――――――――――――――――