如何使用空格作为关键字参数传递字符串

时间:2019-04-08 20:32:51

标签: python

我正在尝试实现获取值并将这些值设置为字典的新值的功能。

data = {} 
def setValue(**kwargs):
    for key, value in kwargs.items():
        data[key] = value

此功能对没有空格的字符串效果很好。

setValue(Hello = 3)
# {'Hello': 3}

但是当我尝试设置具有“ Hello World”之类的空格的键字符串的值时,出现了SyntaxError。

setValue(Hello World = 3) # SyntaxError: invalid syntax
setValue("Hello World" = 3) # SyntaxError: keyword can't be an expression

如何传递包含空格字符的字符串作为关键字参数?

2 个答案:

答案 0 :(得分:3)

您可以传递关键字参数的字典。

k = {'Hello World': 3}
setValue(**k)

答案 1 :(得分:1)

  

如何传递包含空格字符的字符串作为关键字参数?

这是不可能的,因为变量(以及关键字参数)在Python中不能有空格。

来源: https://docs.python.org/3/reference/lexical_analysis.html#identifiers

您可以使用下划线:

setValue(Hello_World=3)

或者将矮人作为命令传递:

setValue(**{'Hello World': 3})