python作业:让用户输入键和值生成字典,然后通过值查找对应的键

python作业:让用户输入键和值生成字典,然后通过值查找对应的键,第1张

# 以输入3个值和键为例

dic = {}

for i in range(0,3):

    key = input("输入建:")

    val = input("输入值:")

    if key not in dickeys():

        dic[key] = val

print("输入完成。")

key = input("输入要查找的键:")

if key in dickeys():

    print(key,'的值为:',dic[key])

else:

    print('字典中没有这个键')

效果如下:

Python Code:

d1 = {'k1': 'v1', 'k2': 'v2', 'k3': 'v3'}

d2 = {'k1': 'v1_1', 'k3': 'v3_3', 'k4': 'v4'}

print(list(map(lambda k: (d1[k], d2[k]), {d1} & {d2})))

输出:

[('v3', 'v3_3'), ('v1', 'v1_1')]

上述演示代码中 d1 和 d2 这两个字典的相同键都是:k1 和 k3,

其对应值为:v1, v1_1 和 v3, v3_3,输出时列表内部以元组的形式返回了这两个相同建的值。

Dictionary<string, int> dictionary = new Dictionary<string, int>();

dictionaryAdd("A1", 123);

dictionaryAdd("A2", 456);

KeyValuePair<string,int> kvp=dictionaryFirstOrDefault();// 获取第一个

ConsoleWriteLine("Key={0}\tValue={1}",kvpKey,kvpValue);

1、点击“开始”—“Visual Studio 2015”,启动 Visual Studio 2015。

2、点击新建项目,新建一个控制台应用程序项目。

3、Dictionary包含在SystemCollectionsGeneric名空间中,在使用前请务必确认已引用这个命名空间。

4、创建一个Dictionary对象,并声明它的键类型和值类型,如以 key 的类型为 int , value的类型为string来创建一个名为testDic的Dictionary对象。

5、使用ADD方法,向testDic对象中添加一系列元素

6、当向testDic对象添加元素后,testDic对象就会有两个List,一个list是 Keys,j 即包含 Dictionary中的键的集合;一个List 是 Values ,即包含 Dictionary中的值的集合。可以通过遍历的方式来获取。

1 元组简介

元组基本介绍

• 元组表现形式tuple

• 元组是一个不可变序列(一般当我们希望数据不改变时,我们使用元组,其他情况下基本都用列表)

• 使用()创建元素

• 元组不是空元组至少有一个 逗号(,)  当元组不是空元组时括号可以省略 

• 元组解包指将元组当中的每一个元素都赋值给一个变量

2 可变对象

Python中,数值类型(int和float)、字符串str、元组tuple都是不可变类型。而列表list、字典dict、集合set是可变类型

可变对象中都保存了三个数据

• id(标识)

• type(类型)

• value(值)

3 字典简介

31 字典的基本介绍

• 字典属于一种新的数据结构称为映射(mapping)

• 字典的作用和列表类似,都是用来存储对象的容器

• 列表存储数据的性能好,但是查询数据的性能差,字典正好与之相反

• 在字典中每一个元素都有唯一的名字,通过这个唯一的名字可以找到指定的元素

• 这个唯一的名字我们称之为key 通过key可以快速查询value 也可以称之为值

• 字典我们也称之为键值对(key-value)结构

• 每个字典中都可以有多个键值对,而每一个键值对我们称其为一项(item)

• 创建一个有数据的字典 语法 {key:value}

• 字典的值可以是任意对象 字典的键可以是任意的不可变对象(int str bool tuple)

• 字典的键是不能重复的,如果出现重复的后面的会替换前面的

32 字典的使用

• dict()函数来创建字典

• get(key[,default]) 根据键来获取字典的值。第二个参数可以指定一个默认值,当获取不到值的时候会返回默认值

• update() 将其他字典的key-value添加到当前的字典当中

• del 删除字典中的key-value

• popitem() 删除字典最后的一个key-value 这个方法是有返回值的。删除之后它会将删除的key-value作为返回值返回

• pop(key[,default]) 根据key删除自定中的value。第二个参数可以指定一个默认值,当获取不到值的时候会返回默认值

33 copye()

copy() 方法用来对字典进行潜复制

注意:潜复制只会复制字典本身,如果字典中还有个字典是不会进行复制的

4 遍历字典

我们主要可以通过3种方式对字典进行遍历

• keys()  该方法返回字典所有的key

• values() 该方法返回一个序列 序列中保存有字典的值

• items() 该方法会返回字典中所有的项 它返回一个序列,序列中包含有双值子序列 双值分别是 字典中的key和value

5 集合

51 集合简介

• 集合表现形式set 集合和列表非常相似

• 不同点

• 集合只能存储不可变对象

• 集合中存储的对象是无序的

• 集合不能出现重复元素

• 使用{}来创建集合

• 可以通过set()来将序列和字典转换成集合

• len() 使用len()来获取集合中元素的数量

• add()像集合中添加元素

• update()将一个集合中的元素添加到另一个集合当中

• pop()随机删除集合中的一个元素一般是删除最后一个元素

• remove() 删除集合中指定的元素

• clear() 清空集合

52 集合的运算

• & 交集运算

• | 并集运算

• - 差集运算

• ^ 亦或集

• <= 检查一个集合是否是另一个集合的子集

• < 检查一个集合是否是另一个集合的真子集

• >=检查一个集合是否是另一个集合的超集

• >检查一个集合是否是另一个集合的真超集

1dictionary字典,是除列表外python最灵活的内置数据结构类型,列表是有序的对象集合,字典是无序的对象集合。字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典用“{}”标识,字典由索引(key),和它对应的值value组成

字典是一种通过名字或者关键字引用的数据结构,其键可以是数字、字符串、元组,这种结构类型也称之为映射。字典类型是Python中唯一内 建的映射类型,基本的 *** 作包括如下:

(1)len():返回字典中键—值对的数量;

(2)d[k]:返回关键字对于的值;

(3)d[k]=v:将值关联到键值k上;

(4)del d[k]:删除键值为k的项;

(5)key in d:键值key是否在d中,是返回True,否则返回False。

2创建字典

字典由多个键及其对应值构成的键-值对组成,键与值之间用:隔开。

(1) dict1 = {} #创建一个空字典

dict2={'x':5, 'd':4, 's':'dd'} #创建字典 #注意,字典的键是唯一的,但值并不唯一

print dict2

运行输出:{'x':5, 'd':4, 's':'dd'}

(2) dict函数(类型)

items = [('name', 'Gumby'), ('age', 42)]

dict3 =dict(items)

print dict3

运行输出:{'age': 42, 'name': 'Gumby'} # 转化为字典形式

(3)也可以通过关键字创建字典:

dict4 = dict(name = 'Gumby', age = 42)

print dict4

运行输出:{'age': 42, 'name': 'Gumby'}

3d['y'] 返回字典中‘y’对应的值 type(y) 求字典的类型

len(c) 返回字典c中键值对的数量 print 'x' in d # true/False ,检查'x'是否在字中, 查找的是键而不是值

dict3 = {'x':4, 'adc':'wewe', 'a':'as'}

print dict3

print dict3['x']

print type(dict3)

print len(dict3)

print '5' in dict3

dict3['adc'] = 4 #将4赋值给adc

print dict3

del dict3['a'] #删除键值为a的项

print dict3

运行输出:

{'a': 'as', 'x': 4, 'adc': 'wewe'}

4

<type 'dict'>

3

False

{'a': 'as', 'x': 4, 'adc': 4}

{'x': 4, 'adc': 4}

4字典的方法

(1) clear清除字典的项

d = {'x': 5, 'y': 6, 'z': 1, 'r': 12,'7' :4}

dclear()

print d

运行后输出:

{}

(2)formkeys 使用给定的键建立新的字典,每个键对应的默认值为None

c = {}

a = cfromkeys(['s','b'])

print c # 仍是空字典

print a # 新的字典a

运行输出;

{}

{'s': None, 'b': None}

(3)has_key 检查字典中是否含有特定的键,dhas_key(k)相当于k in d

d = {'x': 5, 'y': 6, 'z': 1, 'r': 12,'7' :4}

print dhas_key('x')

print dhas_key('4')

运行输出:

True

False

(4)get方法:get是个更宽松的访问字典项的方法

d = {'x': 5, 'y': 6, 'z': 1, 'r': 12,'7' :4}

print dget('x')

运行输出:5

(5)copy方法:返回一个具有相同键—值对的新字典,这个方法的是浅复制

d = {'x': 5, 'y': 6, 'z': 1, 'r': 12,'7' :4}

s = dcopy()

print s

运行输出:{'y': 6, 'x': 5, 'r': 12, 'z': 1, '7': 4}

(6)items方法将所有的字典项一列表方式返回,这些列表项中的每一项都来自于(键,值),但是项在返回时并没有特殊的顺序

d = {'x': 5, 'y': 6, 'z': 1, 'r': 12,'7' :4}

c = ditems()

print c

运行输出:[('y', 6), ('x', 5), ('r', 12), ('z', 1), ('7', 4)]

Iteritems方法的作用大致相同,但是会返回一个迭代器对象而不是列表

(7)更多方法: >

举例如下:

1、新增python文件,testdictkeypy;

2、编写python代码,定义字典,并获取字典的key;

my_dict = dict(name="lili", age=32, money=1200, hourse=None)

key_list = my_dictkeys()

print(list(key_list))

3、选择‘在终端中运行Python文件’;

4、查看运行结果,可以输出字典的所有键;['name', 'age', 'money', 'hourse']

以上就是关于python作业:让用户输入键和值生成字典,然后通过值查找对应的键全部的内容,包括:python作业:让用户输入键和值生成字典,然后通过值查找对应的键、python中两个字典间根据相同的键筛选其对应的值、c#字典怎么获取第一个键值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10128993.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存