python基础day03
程序员文章站
2022-03-02 19:37:37
...
目录
一、dict字典
字典其实就是相当于java中的Map类,拥有key和value,通过key去寻找value值。
1.格式
key:value
变量名 = {key1:value1, key2:value,...}
2.常见操作
info = {'name':'班长', 'id':100, 'sex':'f', 'address':'地球亚洲中国北京'}
#根据key获取value
print(info.get('name'))
#根据key修改value
info.__setitem__('name','学习委员')
print(info.get('name'))
#使用 变量名['key'] = value的形式,就相当于给字典添加元素。
#因为一旦找不到就会创建一个key:value
info['age'] = 9
print(info.get('age'))
#删除元素
del info['name']
#遍历字典,返回的是key值
for e in info:
print(e)
#查看字典长度
print(info.__len__())
#返回一个包含所有key的列表
keys = info.keys()
#返回一个包含所有value的列表
values = info.values()
#返回包含一个元组的列表
items = info.items()
#判断key是否存在,存在返回true否则返回false
#注意:has_key方法在python3中删除,所以只能通过 if 'name' in info判断
#isName = info.has_key('name')
if 'name' in info:
print(info.get('name'))
3.enumerate()
使用enumerate()带下表索引的遍历
代码:
info = {'name':'班长', 'id':100, 'sex':'f', 'address':'地球亚洲中国北京'}
i = 0
#遍历字典
for i,e in enumerate(info):
print('%d %s'%(i,e))
4.公共方法
运算符 | Python 表达式 | 结果 | 描述 | 支持的数据类型 |
---|---|---|---|---|
+ | [1, 2] + [3, 4] | [1, 2, 3, 4] | 合并 | 字符串、列表、元组 |
* | 'Hi!' * 4 | ['Hi!', 'Hi!', 'Hi!', 'Hi!'] | 复制 | 字符串、列表、元组 |
in | 3 in (1, 2, 3) | True | 元素是否存在 | 字符串、列表、元组、字典 |
not in | 4 not in (1, 2, 3) | True | 元素是否不存在 | 字符串、列表、元组、字典 |
5.内置函数
序号 | 方法 | 描述 |
---|---|---|
1 | cmp(item1, item2) | 比较两个值 |
2 | len(item) | 计算容器中元素个数 |
3 | max(item) | 返回容器中元素最大值 |
4 | min(item) | 返回容器中元素最小值 |
5 | del(item) | 删除变量 |
二、集合
Python的集合(set)是一个无序的不重复元素序列。
使用 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
1.创建格式
parm = {value1,value2,...}
或
set(value)
2.常用的操作
方法 | 描述 |
---|---|
add() | 为集合添加元素 |
clear() | 移除集合中的所有元素 |
copy() | 拷贝一个集合 |
difference() | 返回多个集合的差集 |
difference_update() | 移除集合中的元素,该元素在指定的集合也存在。 |
discard() | 删除集合中指定的元素 |
intersection() | 返回集合的交集 |
intersection_update() | 删除集合中的元素,该元素在指定的集合中不存在。 |
isdisjoint() | 判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。 |
issubset() | 判断指定集合是否为该方法参数集合的子集。 |
issuperset() | 判断该方法的参数集合是否为指定集合的子集 |
pop() | 随机移除元素 |
remove() | 移除指定元素 |
symmetric_difference() | 返回两个集合中不重复的元素集合。 |
symmetric_difference_update() | 移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。 |
union() | 返回两个集合的并集 |
update() | 给集合添加元素 |
三、判断语句
1.if-else
(1)格式
if 条件:
满足条件时要做的事情1
满足条件时要做的事情2
满足条件时要做的事情3
...(省略)...
else:
不满足条件时要做的事情1
不满足条件时要做的事情2
不满足条件时要做的事情3
...(省略)...
(2)用法
name = input()
if "xm"==name:
print("xm进来了")
else:
print("不是xm")
2.elif
elif是一个多条件判断的语句。
(1)格式
if xxx1:
事情1
elif xxx2:
事情2
elif xxx3:
事情3
(2)用法
score = 77
if score>=90 and score<=100:
print('本次考试,等级为A')
elif score>=80 and score<90:
print('本次考试,等级为B')
elif score>=70 and score<80:
print('本次考试,等级为C')
else:
print('本次考试,等级为D')
值得注意的是elif可以和else一起使用。
3.if嵌套
(1)格式
if 条件1:
满足条件1 做的事情1
满足条件1 做的事情2
...(省略)...
if 条件2:
满足条件2 做的事情1
满足条件2 做的事情2
...(省略)...
(2)用法
chePiao = 1 # 用1代表有车票,0代表没有车票
daoLenght = 9 # 刀子的长度,单位为cm
if chePiao == 1:
print("有车票,可以进站")
if daoLenght < 10:
print("通过安检")
else:
print("没有通过安检")
else:
print("没有车票,不能进站")
四、三目表达式
1.格式
x = 5
y = 6
#一般的写法
if (x == y):
print("两数相同!")
elif(x > y):
print("较大的数为:",x)
else:
print("较大的数为:",y)
#三目运算符写法
print(x if(x>y) else y)
五、循环语句
1.while语句
(1)格式
i = 0
while i<10000: #判断条件
print("Hello Python")
i+=1 #相当于i=i+1
(2)while嵌套
打印99乘法表
i = 1
while i<=9:
j = 1
while j<=i:
result = i*j
print("%d*%d=%d "%(j,i,i*j),end='') #python默认会自动换行,end=''表示不换行
j+=1
print("\n")
i+=1
2.for循环
(1)格式
for 临时变量 in 列表或者字符串等:
循环满足条件时执行的代码
else:
循环不满足条件时执行的代码
(2)用法
name = 'xiaoming'
for x in name:
print(x)
else:
print("没有数据")
输出结果:xiaoming
3.break和continue
break和continue都是用于强制结束循环,它们的区别在于break强制结束所有循环,无论它处于外循环还是内循环。continue则是退出当前这次循环,下一个循环还会继续。
代码:
name = 'hotdogs'
for x in name:
print('----')
if x == 'g':
break
print(x)
'''
------------分割线---------------
'''
name = 'hotdogs'
for x in name:
print('----')
if x == 'g':
continue
print(x)
输出结果: 第一段代码输出hotdo,第二段代码输出hotdos