目录
1、字典
字典是一种和列表类似的数据存储方式, 不同于列表的东西是列表只能用数字获取数据,字典可以用任何东西获取,字典能够把一个东西和另外一个东西联系起来,不管它们是什么类型。
#州的名字和简写
states = {
'Oregon':'OR',
'Florida':'FL',
'California':'CF',
'New York':'NY',
'Michigan':'MI'
}
#简写后的州对应的城市
cities = {
'CF':'San Francisco',
'MI':'Detroit',
'FL':'Jacksonville'
}
#添加新的城市进去cities
cities['NY'] = 'New York'
cities['OR'] = 'Portland'
print(cities)
#打印出一些城市
print('_'*10)
print('NY State has:',cities['NY'])
print('OR State has:',cities['OR'])
#打印出一些州
print('_'*10)
print("Michigan's abbreviation is :",states['Michigan'])
print("Florida's abbreviation is :",states['Florida'])
#########
print('_'*10)
print('Michigan has:',cities[states['Michigan']])
print('Florida has:',cities[states['Florida']])
#items()方法遍历把字典中的键值对应到state,abbrev
print('_'*10)
for state,abbrev in list(states.items()):
print(f" {state} is abbreviated {abbrev}")
print('_'*10)
for abbrev,city in list(cities.items()):
print(f" {abbrev} has the city {city}")
for state,abbrev in list(states.items()):#这一步目前state和abbrev对应的是states中的对应点
print(f"{state} has the city {abbrev}")#猜想abbrev目前里面包括【OR,FL,NY等等】
print(f"and has city{cities[abbrev]}")
print('_'*10)
state = states.get('Texas')
if not state:
print('sorry,no Texas')
city = cities.get('TX','dose not Exist')#在这里dose not Exist 相当于是get()方法的defaulats参数,当指定的键值不存在,则返回这个默认参数
print(f"the city for the state 'TX' is :{city}")
2、元组
元组是另一个数据类型,类似于list,元组用()标识,内部元素用逗号隔开,但是注意元组不饿能二次赋值,相当于只读列表。
元组只包含一个元素时,需要在元素后面加逗号,元组中元素值不允许删除,使用del删除整个元组
2.1元组内置函数
len(tuple)--------计算元组 个数
max(tuple)------返回元组中最大值
min(tuple)------返回元组中最小值
tuple(sea)---将列表转换为元组
#元组学习
tuple = ('xiaosun',123,'xiaojian',456,'78')
tinytuple = (908,'xiaojia')
print(tuple)
print(tinytuple)
print(tuple[0])
print(tuple[1:3])
print(tinytuple*2)
print(tuple+tinytuple)
del tuple
print(tuple)
3、布尔类型
这部分重点学习了not ,not就是非的意思,not False = True ,not True =False
and 与运算,两个条件都成立返回True
or 或运算 ,两个条件中成立一个则返回True
#字典比较
q = {1:'ahhaha',2:'xixi',3:'didi'}
b = {1:'ahhaha',2:'xixi',3:'didi'}
print(q==b)
print(q is b)
print(id(1))
print(id(b))#id函数返回的是对象的内存地址
#赋值后比较
w= [1,231,1]
m= w
print(w==m)
print(w is m)
print(id(w))
print(id(m))#id函数返回的是对象的内存地址?为什么复制后内存地址一样
#空值比较
none_type = None
none_type is None
4、读写文件
close 关闭文件
read 读取文件内容
readline 只读取文本文件一行内容
truncate 清空文件
writ('stuff') 给文件写一些东西
seek(0) 把读、写的位置移到文件最开头
注意写入数据的时候最好指定下文件的编码方式,特别是文件里含有中文的时候指定为’GBK编码模式‘
5、数据类型相关练习
#sets 集合
china_city_name = {'shanxi','sichuan','hainan','beijing','yunnan','kunming','yuncheng'}
type(china_city_name)
china_city_name[1]
输出为set,不支持下标应用和切片。索引set会报错
help()#内置函数,查看函数或模块用途的详细说明。
本章对于文件读写还存在很多疑惑,继续阅读官方文件,多请教