1. python2.7 里的print不需要括号(),python3则需要
print "Hellow World";
print("Hellow World"); #python3
2. 字符类型转换 int() str() float()
3. print('string' + number); 字符和数字不能直接组合输出,需要字符类型转换; 需要改成print('string' + str(number));
4. print(int('3.8')); 字符如果强制将浮点数转数值,会警告; 输出为 3
5. 查看变量类型type();
6. 数据拼接使用 + 符号
7. input()的返回值为字符串类型
8. dict(既JS的Object)是无序的,使用for循环{a:1,b:2,c:3}不一定是从第一个key开始获取
9. set(['Adam', 'Lisa', 'Bart', 'Paul']) set存储的是无序且不重复的集合,无法通过索引进行访问,但可以使用 'Bart' in s进行搜索,搜索区分大小写
10. python函数用def定义 def main(x): 函数也可以有返回值,需要在函数里加上return x ,也可以返回多个值return x,y 返回的是一个tuple (x,y)
11. 函数在传入参数时可以给给默认值,例如power(x, n=2) n默认值为2 ,由于函数的参数按从左到右的顺序匹配,所以默认参数只能定义在必需参数的后面:power(x, n=2, y=3),也可以power(x=1)
12. 如果想让一个函数能接受任意个参数,我们就可以定义一个可变参数:def fn(*args):
13. range(1, 101) 返回1-100的list
14.list切片 L = [1,2,3,4,5,6] L[0:3]表示从0开始取,索引到3为止 如果第一个值为0,还可以省略,L[:3],L[:]表示获取从头到尾,
切片操作还可以指定第三个参数:L[0:0:2] 第三个参数表示每N个取一个,上面的 L[::2] 会每两个元素取出一个来,也就是隔一个取一个。把list换成tuple,切片操作完全相同,只是切片的结果也变成了tuple。
15. 'abc'.upper() 可以把字符串字母变成大写
16. enumerate() 函数 可以获取list的索引(既下标)for index, name in enumerate(): print index,'-',name
17. zip()函数可以把两个 list 变成一个 list >>> zip([10, 20, 30], ['A', 'B', 'C'])
[(10, 'A'), (20, 'B'), (30, 'C')]
18. 1. values() 方法实际上把一个 dict 转换成了包含 value 的list。
2. 但是 itervalues() 方法不会转换,它会在迭代过程中依次从 dict 中取出 value,所以 itervalues() 方法比 values() 方法节省了生成 list 所需的内存。
19. 如果一个对象说自己可迭代,那我们就直接用 for 循环去迭代它,可见,迭代是一种抽象的数据操作,它不对迭代对象内部的数据有任何要求。
20. 迭代 dict
21. 生成列表 [x * x for x in range(1, 11)]
22. 字符串可以通过 % 进行格式化,用指定的参数替代 %s。字符串的join()方法可以把一个 list 拼接成一个字符串。
23. return [x.upper() for x in L if isinstance(x, str)]
执行顺序为 3 1 2