Python教程

python基础—day6 字典及三级菜单的实现

本文主要是介绍python基础—day6 字典及三级菜单的实现,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
字典是另一种可变容器模型,且可存储任意类型对象。



字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中 ,格式如下所示
dict = {'name': 'runoob', 'likes': 123, 'url': 'www.runoob.com'}
 

 

创建

 

 

字典元素的操作

获取字典中的元素

score ={'Name':'Runoob','Age': 7, 'Class':'First'}

#第一中方式,使用[]

print(score['Age'])




#第二章方式,使用get()方法

print(score.get('Age'))

7

 

字典的常用操作

score ={'Name':'Runoob','Age': 7, 'Class':'First'}

print('Name' in score)

print('Name' not in score)

#True

#False



del score['Name']

print(score)

{'Age': 7, 'Class': 'First'}



#清空列表

score.clear()

print('清空的列表',score)

清空的列表 {}

#新增元素

score['Year']=4

print(score)

{'Year': 4}

 

获取字典视图

score ={'Name':'Runoob','Age': 7, 'Class':'First'}

#获取字典的健

KEYS = score.keys()

print(KEYS)

#dict_keys(['Name', 'Age', 'Class'])

print(type(KEYS))

#<class 'dict_keys'>

print(list(KEYS))

#['Name', 'Age', 'Class']



#获取所有的values

values=score.values()

print(values)

#dict_values(['Runoob', 7, 'First'])

print(type(values))

#<class 'dict_values'>

print(list(values))

#['Runoob', 7, 'First']



#获取所有的keys-values

items = score.items()

print(items)

#dict_items([('Name', 'Runoob'), ('Age', 7), ('Class', 'First')])

print(type(items))

<class 'dict_items'>

print(list(items))

#[('Name', 'Runoob'), ('Age', 7), ('Class', 'First')] #转化之后是由元祖组成的

 

字典的元素遍历

score ={'Name':'Runoob','Age': 7, 'Class':'First'}



#字典的遍历

for item in score:

    print(item,score[item],score.get(item))
Name Runoob Runoob

Age 7 7

Class First First

 

 

字典的特点

字典键的特性

字典值可以是任何的 python 对象,既可以是标准的对象,也可以是用户定义的,但键不行。

两个重要的点需要记住:

1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,如下实例:

dict = {'Name': 'Runoob', 'Age': 7, 'Name': '小菜鸟'}

print ("dict['Name']: ", dict['Name'])

2)键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行,如下实例:

实例

dict= {['Name']: 'Runoob', 'Age': 7}

print ("dict['Name']: ", dict['Name'])

 

字典生成式

#内置函数zip()

keys =['Name','Age', 'Class']

values = ['Runoob',7,'First']

dicts = {keys:values for keys,values in zip(keys,values) }

print(dicts)

#{'Name': 'Runoob', 'Age': 7, 'Class': 'First'}



#upper 将小写转为大写

dicts1 = {keys.upper():values for keys,values in zip(keys,values) }

print(dicts1)

#{'NAME': 'Runoob', 'AGE': 7, 'CLASS': 'First'}



三级菜单的实现
1.省市县
2.可以查询
3.可以返回上一层,退出
area = {
    #省
    '广东省':{
        #市
        '广州':{
            #区
            '番禺区':'...',
            '海珠区':'...',
            '花都区':'...',
            '天河区':'...'
        },
        '深圳':{},
        '东莞':{}
    },
    '广西省':{},
    '福建省':{}
}

current_layer = area
parent_layers = []
flag = True
while flag:
    #打印地区
    for key in current_layer:
        print(key)
     #查询地区
    choice = input('请选择要查询的地区>>>:').strip()

    if len(choice) == 0:continue
    if choice in current_layer:
        parent_layers.append(current_layer)
        current_layer = current_layer[choice]
    elif choice == 'b':
        if parent_layers:
            current_layer = parent_layers.pop()

    elif choice == 'q':
        flag =False
    else:
        print('你要查询的没有')

这篇关于python基础—day6 字典及三级菜单的实现的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!