为了账号安全,请及时绑定邮箱和手机立即绑定

如何用Python中字典中的值替换函数变量

如何用Python中字典中的值替换函数变量

杨魅力 2021-08-24 17:33:30
我试图遍历下面的字典并用字典中的值替换函数内的“字符串”变量,然后执行该函数。我正在考虑编写一个 for 循环,然后在 for 循环中包含该函数。请帮忙。预期功能:def my_function(fname):    string = value      print(string + " Refsnes")my_function("string") dict = {"kafka":[{"value":"I am"},{"value":"You are"},{"value":"They are"}]}def my_function(fname):    string = "I am"      print(string + " Refsnes")my_function("string")
查看完整描述

2 回答

?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

最好的办法是先修改你的字典。现在“kafka”映射到所有具有相同密钥的字典列表,所以为什么要首先拥有一个密钥。所以你可以有一个像这样的字典:


dictionary = {"kafka": ["I am", "You are", "They are"]}

也不要调用该变量dict,因为您会覆盖内置函数dict,从而使其无法使用。


然后您还必须更改您的函数以实际使用参数。


def my_function(string):

    print(string + " Refsnes")

现在,要遍历 dict 并打印具有所有值的函数,您有两个选项。


首先循环字典中的列表并重复调用该函数:


for string in dictionary["kafka"]:

    my_function(string)

或者为您的函数提供一个列表并循环遍历函数中的列表。您的函数将如下所示:


def my_function(list_of_strings):

    for string in list_of_strings:

        print(string + " Refsnes")


# Call function with 

my_function(dictionary["kafka"])


查看完整回答
反对 回复 2021-08-24
?
明月笑刀无情

TA贡献1828条经验 获得超4个赞

这里有几件事。你是从别处得到的字典,还是你自己设置的?是否有特定的原因需要定义一个函数?如果你自己设置它,我建议你使用列表而不是字典,并且自己做一个 for 循环,就像这样:


kafka = ['I am ', 'You are ', 'They are']

for k in kafka:

    print(k + 'Refsnes')

如果你需要它是一本字典,你需要它是一个函数,我会像这样处理它。(请注意,您不需要从字典中提取项目的函数,因此我实际上会将循环放入函数中。)


kafkadict = {"first person": "I am", "second person": "You are", "third person plural": "They are"}

def printKafkaStuff(dictinput):

    for k in dictinput.values():

        print(k + " Refsnes")

然后用


printKafkaStuff(kafkadict)


查看完整回答
反对 回复 2021-08-24
  • 2 回答
  • 0 关注
  • 322 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信