如何制作并从dict n python中获取价值?

时间:2017-08-22 12:09:07

标签: python

dict ={"Rahul":"male",
       "sahana":"female"
       "pavan":"male" }

在我们的文本文件中   拉胡尔|夏尔马   萨哈娜|雅各   帕|铢

在python程序中我们必须打开文本文件并读取所有行和" Name"我们必须与dict匹配我们拥有的东西并制作一个带有性别的新文本文件。

输出应该是这样的  拉胡尔|夏尔马|男  萨哈娜|雅各布|女  帕|铢|雄性

2 个答案:

答案 0 :(得分:0)

在我看来,这大致是你想要的。请注意,输入和输出的格式略有偏差,但我很确定我已经知道了。

genders = {"rahul":"male",
           "sahana":"female",
           "pavan":"male" }

with open("input.txt") as in_file:
    for line in in_file:
        a, b = line.strip().split("|")
        gen = genders[a]
        print("{}|{}|{}".format(a, b, gen))

input.txt包含

rahul|sharma
sahana|jacob
pavan|bhat

将正确(我认为)产生输出

rahul|sharma|male
sahana|jacob|female
pavan|bhat|male

我已将您的所有数据更改为小写,就像使用外壳一样,如何在字典中查找,以及如何最终提供输出(只有一个键是大写的,所以我无法使用任何合理的字符串函数来容纳密钥(因为它们)。我还必须在你的字典中添加一个逗号。

我还重命名了你的词典 - 它不再是dict,因为dict是一个内置的Python。我觉得你的代码中有一个可以预测输入文件的字典似乎有点奇怪,但这就是我从问题中得到的。

答案 1 :(得分:-1)

要获取dict中键的值,语法就是:

b = "Rahul"
dict = {"Rahul":"male", "Mahima":"female"}
dict[b]