温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python中如何创建和使用字典

发布时间:2021-11-23 10:37:34 来源:亿速云 阅读:138 作者:小新 栏目:大数据

小编给大家分享一下python中如何创建和使用字典,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

第一课 创建和使用字典

# 创建和使用字典

# 我们以前讲过2种序列:1列表 2元组
# 共同点:都是通过索引引用元素值
# 不同点:列表是可读写的,元组是只读的

names = ["Bill", "Mike", "John", "Mary"]

numbers = ["1234", "4321", "6789", "6543"]

print(numbers[names.index("Mike")])   #4321      通过names中的Mike的索引 位置 来查找他的电话号码 numbers中的列表
print(names[numbers.index("6543")])     # Mary

# 多个关联的数据分散到不同的 列表或者元组中,不太好维护 引入 字典 
# 字典是一对 key和value {}  中间用: 表示
phoneBook = {"Bill":"1234","Mike":"4321","John":"6645","Mary":"7753"}
print(phoneBook)             #  {"Bill":"1234","Mike":"4321","John":"6645","Mary":"7753"}
print(phoneBook["Mike"])     #  4321
----------------------------------------------- 
第二课 使用dict函数将序列(列表、元组)转换为字典     // 通俗的理解为: 可以把列表和元组 通过 dict函数 转化为字典类型  

# 使用dict函数将序列转换为字典
# 第一个是列表 第二个元素为元组    
# 首先定义一个列表,列表中有多个元数,里面的元素可以为多个值,可以为列表也可以为元组 
items = [['Bill',"4321"],("Mike","7891"),['John','4567']]
d = dict(items)
print(d)        # {'Bill': '4321', 'Mike': '7891', 'John': '4567'}
'''
也可以直接写成这样 
items = [['Bill',"4321"],("Mike","7891"),['John','4567']]
#d = dict(items)
print(dict(items))
'''

dict1 = dict(name="Bill", number=6543, age=34)   # 这是把元组转化为字典
print(dict1)   # {'name': 'Bill', 'number': 6543, 'age': 34}

# 需要先定义一个空的列表 然后 把输入的 input 追加起来,再通过dict函数进行转化  成字典 
items = []
while True:
    key = input("请输入Key:")
    if key == ":exit":
        break;
    value = input("请输入value:")
    keyValue = [key,value]
    items.append(keyValue)  # 追加
d = dict(items)
print(d)

'''
请输入Key:majihui
请输入value:12345
请输入Key:zhaoshun
请输入value:33333
请输入Key:local
请输入value:china
请输入Key::exit
{'majihui': '12345', 'zhaoshun': '33333', 'local': 'china'}
'''

-------------------------------------
第三课 字典的基本操作

# 字典的基本操作
# 通过len函数获取字典的长度
items = [1,2,3,4,5]      # 这是一个列表
print(len(items))        # 5 输出列表的长度
d = {"name":"Bill", "age":43}   # 这是一个字典
print(len(d))            # 2    输出字典的长度

# 通过key获取和设置或修改字典中的值 
print(d["name"])            # Bill 获取字典中的值 
d["name"] = "Mary"          # 修改字典中的value的值 把原来名字为 Bill改成 Mary
print(d)                    # {'name': 'Mary', 'age': 43} 

#print(items[10])           # 当输出的索引超出了列表 就会报错 异常
d["salary"] = 5432          # 在原来字典的基础上追加一个 
print(d)                    # {'name': 'Mary', 'age': 43, 'salary': 5432}

# 判断字段是否在列表中
print(1 in items)           # True
print(10 in items)          # False

#对于字典来说,他是直接找key是否在字典中存储,他不会找value
print("name" in d)          # True
print("location" in d)      # False

'''
列表和字典不同点小结:
1. key的类型,列表只能是数字(索引),字典的key可以是多种类型,如字符串、元组
2. 自动添加,引用列表元素,索引必须在范围内,否则抛出异常,字典的key如果不存在,会自动添加一个key-value对
3. 查找成员,列表使用in,直接查找值,字典使用in,查找key
查找效率,字典要高于列表和元组
'''

IDEs = {
    'eclipse':
    {
        'languages':['Java','Python','JavaScript','PHP'],
        'organization':'Eclipse基金会'
    },
    'visualstudio':
    {
        'languages':['C#','C++', 'VB.NET'],
        'organization':'微软'
    },
    'webstorm':
    {
        'languages':['JavaScript'],
        'organization':'JetBrains'
    }    

}
labels = {
    'languages':'支持的编程语言',
    'organization':'所属机构'
    }
IDE = input('请输入IDE的名字')
findIDE = IDE.replace(' ', '').lower() # 把输入的空格转化为空 并且 把输入的值转化为小写  

choice = input('要查询的IDE支持的编程语言(lang)还是所属及机构(org)?') 
if choice == 'lang': key = 'languages'
if choice == 'org': key = 'organization' 

if findIDE in IDEs:
    print("{} {}是{}.".format(IDE, labels[key],IDEs[findIDE][key]))

'''
请输入IDE的名字eclipse
要查询的IDE支持的编程语言(lang)还是所属及机构(org)?lang
eclipse 支持的编程语言是['Java', 'Python', 'JavaScript', 'PHP'].

请输入IDE的名字WEBstorm
要查询的IDE支持的编程语言(lang)还是所属及机构(org)?org
WEBstorm 所属机构是JetBrains.

请输入IDE的名字eclipse      //输入的这个空面有空格
要查询的IDE支持的编程语言(lang)还是所属及机构(org)?org
eclipse  所属机构是Eclipse基金会.
'''

看完了这篇文章,相信你对“python中如何创建和使用字典”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI