字典型集合字符处理简单介绍

 

字典型

# ======================================dict基本使用======================================
# 1、用途:

# 2、定义方式:在{}内用逗号分割开多个元素,每个元素都是key:value的形式
     其中value可以是任意类型,而key必须是不可变类型,通常是字符串类型
 
#3常用方法
dic = {
     'name': 'xxx',
     'age': 18,
    'hobbies': ['play game', 'basketball']
 }
	3.1按key存取值:可存可取
    	print(dic['name'])
        print(dic['hobbies'][1])
    3.2对于赋值操作,如果key原先不存在于字典,则会新增key:value
        dic['killboss'] = 5
    {'name': 'tony', 'age': 18, 'hobbies': ['play game', 'basketball'],'killboss':5}
    3.3对于赋值操作,如果key原先存在于字典,则会修改对应value的值
    	dic['name']='dijia'
        {'name': 'dijia', 'age': 18, 'hobbies': ['play game', 'basketball']}
    3.4get()   推荐用get
    	dic.get('name')   #key存在,则获取key对应的value值      xxx
        res=dic.get('xxx') # key不存在,不会报错而是默认返回None
        print(res)
        res=dic.get('xxx',666) # key不存在时,可以设置默认返回的值
长度len
	print(len(dic))   #3
成员运算 innot in
	print('name' in dic)  #True 判断某个值是否是字典的key
删除
	pop()
    	print(dic.pop('name')) #通过指定字典的key来删除字典的键值对
    popitem()
    	item =dic.popitem()
        print(dic)
		print(item)
    	随机删除一组键值对,并将删除的键值放到元组内返回
        # {'name': 'xxx', 'age': 18}
		#('hobbies', ['play game', 'basketball'])
键keys(),值values(),键值对items()
	dic.keys()    #获取所有key
    dic.values()   #获取所有value
    dic.items()   #获取所有key和value
循环  默认遍历的是字典的key
	for key in dic:
        print(key)
只遍历key
	for key in dic.keys():
只遍历value
	for key in dic.vallues():
遍历key与value
	for key in dic.items():
update()
 把一个新的字典加到旧的里面旧的item不删除         #用新字典更新旧字典,有则修改,无则添加
fromkeys()
给一个字典多个key加同一个value   #dic = dict.fromkeys(['k1','k2','k3'],[])
setdefault()
dic={'k1':111,'k2':222}
	》key不存在则新增键值对,并将新增的value返回
    res=dic.setdefault('k3',333)   # 333
    》key存在则不做任何修改,并返回已存在key对应的value值
    res=dic.setdefault('k1',666)   #111
    
# ======================================该类型总结====================================
# 存多个值

# 无序

# 可变

集合

# ======================================set基本使用======================================
# 1、用途
定义:在{}内用逗号分隔开多个元素,集合具备以下三个特点:
     1:每个元素必须是不可变类型
     2:集合内没有重复的元素
     3:集合内元素无序
    s = {1,2,3,4}  # 本质 s = set({1,2,3,4})
    注意1:列表类型是索引对应值,字典是key对应值,均可以取得单个指定的值,而集合类型既没有索引也没有key与值对应,所以无法取得单个的值,而且对于集合来说,主要用于去重与关系元素,根本没有取出单个指定值这种需求。
	注意2:{}既可以用于定义dict,也可以用于定义集合,但是字典内的元素必须是key:value的格式,现在我们想定义一个空字典和空集合,该如何准确去定义两者?
d = {} # 默认是空字典 
s = set() # 这才是定义空集合
#2 关系运算
    但凡能被for循环的遍历的数据类型(强调:遍历出的每一个值都必须为不可变类型)都可以传给set()转换成集合类型
类型转换
#3常用方法
ultraman = {"迪迦","贝吉塔","特兰克斯","泰罗"}  
monster = {"特兰克斯","贝吉塔","孙悟饭","克林"} 
	3.1合集/并集(|):求两个用户所有的好友(重复好友只留一个)
    	print(ultraman | monster) 
        #{'克林', '迪迦', '孙悟饭', '贝吉塔', '特兰克斯', '泰罗'}
    3.2交集(&):求两个用户的共同好友
    	print(ultraman & monster)
        #{'贝吉塔', '特兰克斯'}
    3.3差集(-)print(ultraman - monster) #{'泰罗', '迪迦'}  ultraman里面独有的
        print(monster - ultraman) #{'克林', '孙悟饭'}  monster里面独有的
        
    3.4对称差集(^) # 求两个用户独有的好友们(即去掉共有的好友)
    	print(monster ^ ultraman)
        #{'克林', '泰罗', '迪迦', '孙悟饭'}
    3.5值是否相等(==)
    	print(monster == ultraman)   #False
    3.6父集:一个集合是否包含另外一个集合
    	3.6.1包含则返回True
        	{1,2} < {1,2,3} #True
        3.6.2不存在包含关系,则返回False
        	{1,2,3} > {1,3,4,5} #False

    3.7子集
    s1 = {1,2,3,5}
	s2 = {3,1,2,6}
        print(s2.issubset(s1))   #false  s2是不是s1的儿子,s2有的  s1全有则是true  否则false
# ======================================该类型总结====================================
# 存多个值

# 无序

# 可变

文件处理

"""
1 什么是文件
    文件是操作系统提供给应用程序或者说用户的一种操作硬盘功能



    应用程序----------》
    操作系统---------》文件
    计算机硬件-------》硬盘



2 为何要处理文件
    为了操作硬盘


3 如何处理文件


"""
f = open(r'a.txt',mode='rt',encoding='utf-8')
# print(f)

data = f.read()
print(data)

# for line in f:
#     print(line)
    # user,pwd = line.strip('\n').split(':')
    # print(user,pwd)


f.close()

print(f)
f.read()

posted @ 2021-08-03 19:18  迪迦张  阅读(63)  评论(0编辑  收藏  举报