list 列表,有序集合,可随时添加和删除其中的元素
li = ['a', 'b', 'c'] #li = []
len(li)
li[len(li)-1] #li[-1]
li.append('d')
li.insert(1,'e') #['a','e','b','c','d']
li.pop() #['a','e','b','c']
li.pop(1) #['a','b','c']
li[1] = 'f' #['a','f','b','c']
#list里的元素的数据类型可以不用,甚至可以是领一个list
li2 = ['c', 123, False, ['a','b']]
tuple 元组,一旦初始化不能修改,没有append(),insert()这样的方法
t = ('a', 'b','c') #t = ()
t = (1,) #定义只有一个元素的元组
#tuple的不变指的是指向不变
t = ('a', 'b', ['A', 'B'])
dict 字典,key-value, 空间换时间,key必须是不可变对象
通过key计算位置的方法:Hash算法
#判断key是否存在
'mandy' in d # Flase
d.get('mandy',-1) #若不存在,返回None或指定的值
#删除key,用pop(key),对应的value的值也删除
注意:dict内部存放的顺序和key放入的顺序是没有关系的
set 集合,一组key的结合,但不存储value,key不能重复,也不能为可变对象
s = set([1,2,3])
s1 = set([1,2,3])
s.add(4) #set([1,2,3,4])
s.remove(1) #set([2,3,4])
s1 & s
s1 | s
注意:对于不可变对象而言,调查对象自身的任意方法,不会改变对象自身的内容,这些方法会创建新的对象返回;而可变对象就变了
条件与循环:
scores = [90, 70, 50]
for score in scores:
if score < 60:
print 'fail'
elif score < 80:
print 'B'
else:
print 'A'
sum = 0
for i in range(1,100,2):
<span style="white-space:pre"> </span>sum += i
print sum
注意:raw_input()读取的内容永远都是以字符串形式返回,将字符串和整数比较就会出错,需要int( raw_input() ) 转换一下
Ctl + C 可以退出程序,强制结束Python进程