gpt4 book ai didi

python中的字典使用分享

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章python中的字典使用分享由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

字典中的键使用时必须满足一下两个条件:

1、每个键只能对应一个项,也就是说,一键对应多个值时不允许的(列表、元组和其他字典的容器对象除外)。当有键发生冲突时(即字典键重复赋值),取最后的赋值.

  。

复制代码 代码如下:
>>> myuniversity_dict = {'name':'yuanyuan', 'age':18, 'age':19, 'age':20, 'schoolname':Chengdu, 'schoolname':Xinxiang}
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'Chengdu' is not defined
>>> myuniversity_dict = {'name':'yuanyuan', 'age':18, 'age':19, 'age':20, 'schoolname':'Chengdu', 'schoolname':'Xinxiang'}
>>> myuniversity_dict
{'age': 20, 'name': 'yuanyuan', 'schoolname': 'Xinxiang'}
>>>

  。

2、键必须是可哈希的,像列表和字典这样的可变类型,由于他们是不可哈希的,所以不能作为字典的键.

为什么呢?—— 解释器调用哈希函数,根据字典中键的值来计算存储你的数据的位置。如果键是可变对象,可以对键本身进行修改,那么当键发生变化时,哈希函数会映射到不同的地址来存储数据,这样哈希函数就不可能可靠地存储或获取相关的数据; 选择可哈希键的原因就是他们的值不能被改变。摘抄python 核心编程(第二版)的一个实例如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#!/usr/bin/env python
 
db = {}
 
def newuser():
   prompt = 'login desired: '
   while True :
     name = raw_input (prompt)
     if db.has_key(name):
       prompt = 'name taken, try another\n'
       continue
     else :
       break
 
   pwd = raw_input ( 'passwd: ' )
   db[name] = pwd
 
def olduser():
   name = raw_input ( 'login: ' )
   pwd = raw_input ( 'passwd: ' )
 
   passwd = db.get(name)
   if passwd = = pwd:
     print 'welcome back' , name
   else :
     print 'login incorrect'
 
def showmenu():
   prompt = """
 
(N)ew User Login
(E)xisting User Login
(Q)uit
 
Enter choice:"""
   done = False
   while not done:
 
     chosen = False
     while not chosen:
       try :
         choice = raw_input (prompt).strip()[ 0 ].lower()
       except :
         choice = 'q'
       print '\nYou picked: [%s]' % choice
       if choice not in 'neq' :
         print 'invalid option, try again'
       else :
         chosen = True
 
     if choice = = 'q' :done = True
     if choice = = 'n' :newuser()
     if choice = = 'e' :olduser()
 
if __name__ = = '__main__' :
   showmenu()

运行结果:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[root@localhost src] # python usrpw.py
 
 
(N)ew User Login
(E)xisting User Login
(Q)uit
 
Enter choice:n
 
You picked: [n]
login desired: root
passwd: 1
 
 
(N)ew User Login
(E)xisting User Login
(Q)uit
 
Enter choice:n
 
You picked: [n]
login desired: root
name taken, try another

最后此篇关于python中的字典使用分享的文章就讲到这里了,如果你想了解更多关于python中的字典使用分享的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com