1 . Dict 字典
1)定义:Python中的字典是python的一种数据结构,它的本质是key和value以及其对应关系的一种集合.
2)创建 key-value
my_dict = {'mike':95 , 'Bob':98 , 'mark':100}
print(my_dict['mark'])
>>>100my_dict['jack'] = 88 #将数据放入字典
print(my_dict)
>>>{'mike':95 , 'Bob':98 , 'mark':100 , 'jack':88}
3)方法
#删除 dict.pop(key) 删除一个key,对应的value也会删掉my_dict.pop('Bob')
print(my_dict)
>>>{'mike':95 , 'mark':100 , 'jack':88}#删除 dict.del(key)
del(my_dict['Bob'])
print(my_dict)
>>>{'mike':95 , 'mark':100 , 'jack':88}##字典items()的使用 每个元素是一个key和value组成的元组,以列表的方式输出
my_dict = {'mike':95 , 'Bob':98 , 'mark':100 , 'jack':88}
print(my_dict.items())
>>>[('mike', 95), ('Bob', 98), ('mark', 100), ('jack', 88)]#输出key的列表
print dict.keys()#输出value的列表
print dict.values()#清空字典
my_str.clear()
https://www.cnblogs.com/yjd_hycf_space/p/6880026.html (详细见该地址)
2 .集合
1)定义:set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
2)创建:
#创建
s = set([1,2,3])
print(s)
>>>[1,2,3]#set中不存在重复元素
s = set([1, 1, 2, 2, 3, 3])
print(s)
>>>[1,2,3]#通过add(key)方法可以添加元素到set中,可以重复添加,但不会有效果
s.add(4)
print(s)
>>> {1, 2, 3, 4}s.add(4)
print(s)
>>> {1, 2, 3, 4}#set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集等操作:
s1 = set([1, 2, 3])
s2 = set([2, 3, 4])
print( s1 & s2)
>>>{2, 3}
print( s1 | s2)
>>>{1, 2, 3, 4}
3 .判断语句
if(判断内容):执行内容1
elif(判断内容):执行内容2
else:执行内容3#python不支持switch,所以只有用elif代替
4 .三目表达式
为真时的结果 if 判断条件 else 为假时的结果(注意,没有冒号)
x = x+1 if x%2==1 else x
5 .循环语句
# white循环while 判断条件:语句#while语句中使用else :在 while中的判断条件为 false 时执行 else 的语句块:
count = 6
while count < 5:print (count, " 小于 5")count = count + 1
else:print (count, " 大于或等于 5")>>>大于或等于 5#for 循环:可以遍历任何序列的项目,如一个列表或者一个字符串。
一般格式如下:
for <variable> in <sequence>:<statements>
else:<statements>还可以结合break和continue语句
sites = ["Baidu", "Google","Runoob","Taobao"]
for site in sites:if site == "Runoob":print("出去咯!")breakprint("循环数据 " + site)
else:print("没有循环数据!")
print("完成循环!")>>>循环数据 Baidu
循环数据 Google
出去咯!
完成循环!#循环语句可以有 else 子句,它在穷尽列表(以for循环)或条件变为 false (以while循环)导致循环终止时被执行,但循环被break终止时不执行。range()函数:如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列。
for i in range(5):print(i)
>>>0
1
2
3
4也可以用range指定区间
for i in range(5,9) :print(i)
>>>5
6
7
8也可以使range以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做'步长'):
for i in range(0, 10, 3) :print(i)
>>>0
3
6
9# for循环的列表解析式
列表 = [对x的操作 for x in 列表 if 条件]
列表 = [对x和y的操作 for x in 列表1 for y in 列表2 if 条件]