一、条件判断
1、注意使用:表示块级区域
2、elif表示else if
3、x不为数字零,空的list,空的字符串都是True,否则为False
if x:
print("xxx");
二、循环
1、or...in..循环list或者是tuple
for x in list
2、range(5)生成从0-4的整数
3、while循环
三、内置字典dict
dict全称为dictionary,在其他语言中成为map,键值对的形式存在
声明字典
d= dict(name='lili',age=23)
1、取值 d = {'name':lili",'age':23}
d['name'] // 'lili'
如果取的键不存在就会报错
2、赋值
d['age'] = 24;
3、判断键是否存在
‘name’ in d //True
‘name2’ in d //False
通过get方法,不存在就返回None,也可以设置不存在时的返回值d.get('name',-2)
4、删除一个键
d.pop('name') //'lili'
或者del d['lili']
四、set是key的集合,没有value,不会有重复的key
s=set([1,2,3,3,3,3]) //{1,2,3}
1、添加元素
s.add(4) //{1,2,3,4}
可以重复添加,但是无效
2、删除key
s.remove(3) //{1,2}
3、可以求两个set的交集,或者并集
>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
>>> s1 & s2
{2, 3}
>>> s1 | s2
{1, 2, 3, 4}
五、不可变对象
1、可变对象,list
>>> a = ['c', 'b', 'a']
>>> a.sort()
>>> a
['a', 'b', 'c']
2、不可变对象str
>>> a = 'abc'
>>> b = a.replace('a', 'A')
>>> b
'Abc'
>>> a
'abc'
replace
方法创建了一个新字符串'Abc'
并返回,如果我们用变量b
指向该新字符串,就容易理解了,变量a
仍指向原有的字符串'abc'
,但变量b
却指向新字符串'Abc'
了
六、请务必注意,dict内部存放的顺序和key放入的顺序是没有关系的。正确使用dict非常重要,需要牢记的第一条就是dict的key必须是不可变对象。
和list比较,dict有以下几个特点:
- 查找和插入的速度极快,不会随着key的增加而变慢;
- 需要占用大量的内存,内存浪费多。
而list相反:
- 查找和插入的时间随着元素的增加而增加;
- 占用空间小,浪费内存很少。
所以,dict是用空间来换取时间的一种方法。