(一)字典
字典和列表有一些共通之处,但还有很大区别。
字典可以用任何方式拿取,列表只能用数值提取数据
# 列表
hey = ["a","e","i","o","u"]
# 用索引取值
print(hey[3])
# 更改具体列表位置的值
hey[3] = 'iiii'
print(hey)
# 字典
hi = {'name':'sue','age':18,'weight':56*2}
print(hi)
# 取年龄值,直接字符串提取
print(hi["age"])
# 增加字段
hi['city'] ='cq'
print(hi)
# 更改数据,直接对应键赋值
hi['age'] = 'new_18'
print(hi)
# 删除数据
del hi['city']
print(hi)
o
['a', 'e', 'i', 'iiii', 'u']
{'name': 'sue', 'age': 18, 'weight': 112}
18
{'name': 'sue', 'age': 18, 'weight': 112, 'city': 'cq'}
{'name': 'sue', 'age': 'new_18', 'weight': 112, 'city': 'cq'}
{'name': 'sue', 'age': 'new_18', 'weight': 112}
eg:直辖市与直辖市缩写对应的字典代码
# 创建一个直辖市字典
zxs = {
'北京市':'京',
'上海市':'沪',
'天津市':'津',
'重庆市':'渝'
}
qx = {
'京':'朝阳区',
'渝':'南岸区',
'沪':'黄浦区'
}
# 增加天津的qx
qx['津'] = '宝坻区'
print('-' * 20) # 分割线
print(qx['渝'],'是属于重庆市的')
print('-' * 20)
print('北京市的简称是',zxs['北京市'])
print('-' * 20)
print('天津市有',qx[zxs['天津市']])
print('-' * 20)
for zxs_,abbrev in zxs.items():
print(f'{zxs_} 缩写 {abbrev}')
print(f' 有 {qx[abbrev]}')
# 判断字典里是否有该数据
print('-' * 20)
sta = zxs.get('广东')
if not sta:
print('sorry,广东不在字典里')
# 或者直接就知道错误的值
print('-' * 20)
city = zxs.get('新疆','not exist')
print(f'the city for the zxs "新疆" is :{city}')
-------------------- 南岸区 是属于重庆市的 -------------------- 北京市的简称是 京 -------------------- 天津市有 宝坻区 -------------------- 北京市 缩写 京 有 朝阳区 上海市 缩写 沪 有 黄浦区 天津市 缩写 津 有 宝坻区 重庆市 缩写 渝 有 南岸区 -------------------- sorry,广东不在字典里 -------------------- the city for the zxs "新疆" is :not exist
(二)元组
元组虽然类似于列表,但是不可改变,只能当读取列表用。
tup = ( 'alpha', 1 , 0.12, 'Omega', 0.2 ) ttup = (123, 'beta') print(tup) # 直接输出 print(tup[0]) # 取第1个元素 print(tup[1:3]) # 取第2-4,但不包含4 print(tup[2:]) # 取第3个到末尾的所有元素 print(ttup * 2) # 复制2次 print(tup + ttup) # 打印组合的元组
('alpha', 1, 0.12, 'Omega', 0.2)
alpha
(1, 0.12)
(0.12, 'Omega', 0.2)
(123, 'beta', 123, 'beta')
('alpha', 1, 0.12, 'Omega', 0.2, 123, 'beta')
(三)布尔类型
• and
• or
• not
• != (不等于)
• == (等于)
• >= (大于等于)
• <= (小于等于)
• True
• False
(四)读写文件
close - 关闭文件
read - 读取文件,可把读取结果赋给一个变量
readline - 只读取文件的行内容
truncate - 清空文件
write(‘xxxxx’) - 给文件写入一些“东西”。
seek(0) - 把读/写的位置移到文件最开头。
# 打开文件,准备
line1='M'
line2='E'
line3= 'It was also tasty'
my_txt= '今天也要加油呀'
with open(r'C:UsersAdministratorDesktoptxttt.txt','w',encoding='utf8') as f:
f.write(line1)
f.write("n")
f.write(line2)
f.write("n")
f.write(line3)
f.write("n")
f.write(my_txt)
f.close()



