python 笔记
print 中的' '和""都是一样的,可以互用,当文中包含有'时候可以使用""这个符号。这样可以不用转义字符。
字符串连接使用的是,
print r''' contentxsa, contentasaas. csdcsscs. ''' #可以表示多行 print r' ' #可以表示带有’ ”这些字段
在输入中文的时候要使用utf-8编码
# -*- coding: utf-8 -*- print u'''静夜思 床前明月光, 疑是地上霜。 举头望明月, 低头思故乡。'''
第一行编码注释
u代表的是编码支持中文
如果上面有编码注释则可以print 后面不带u也可以输入输出中文
因为Python把0
、空字符串''
和None
看成 False,其他数值和非空字符串都看成 True,所以:
True and 'a=T' 计算结果是 'a=T' 继续计算 'a=T' or 'a=F' 计算结果还是 'a=T'
要解释上述结果,又涉及到 and 和 or 运算的一条重要法则:短路计算。
1. 在计算 a and b
时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。
2. 在计算 a or b
时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。
所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。
List 这里面的数组采用这个[]包裹着;
里面的元素可以被修改
数组的添加:
p.append(...);
数组的插入:
p.insert(site,content);
数组的删除:
p.pop();这里括号中可以填写位数;
然后不填写位数则为最后一位;
tuple是另一种有序的列表,中文翻译为“ 元组 ”。tuple 和 list 非常类似,但是,tuple一旦创建完毕,就不能修改了。
创建tuple和创建list唯一不同之处是用( )
替代了[ ]
。
保证单元素为一个元组的时候应该在这里面添加,l例如
t = ('Adam',) #这里是一个元组 print t t=('asca')#这里是一个字符串,不是元组 print t
if else语句写完后加:
score = 55 if score>=60: print 'passed' else: print 'failed'
if elif 语句
score = 85 if score>=90: print 'excellent' elif score>=80: print 'good' elif score>=60: print 'passed' else: print 'failed'
for语句
for 命名 in 集合:
语句
L = [75, 92, 59, 68] sum = 0.0 for score in L: sum+=score print sum / 4
while语句
sum = 0 x = 1 n = 1 while True: sum=sum+x; x=2*x; n=n+1; if n>20: break; print sum
dict集合(相当于hashmap)
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } print 'Adam:',d['Adam'] print 'Lisa:',d['Lisa'] print 'Bart:',d['Bart']
访问和js有点像
遍历这个dict的时候就会遍历她的key然后在使用d[key]访问里面的数据
set集合(不包含重复的元素)
创建
s = set(['Adam', 'Lisa', 'Bart', 'Paul'])
访问
s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)]) for x in s: print x[0],':',x[1]
删除和添加
s = set(['Adam', 'Lisa', 'Paul','bart']) L = ['Adam', 'Lisa', 'Bart', 'Paul'] for name in L: if name in s: s.remove(name)#删除 s.add(name)#添加 print s