Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中向集合中的每个项添加变量_Python_Python 3.x - Fatal编程技术网

如何在python中向集合中的每个项添加变量

如何在python中向集合中的每个项添加变量,python,python-3.x,Python,Python 3.x,我必须向给定集合中的每个元素添加字符串--foo,我一直在努力尝试,但无法做到。真的有可能吗? 以下是布景 a = {"apple", "banana", "cherry", "6363738", "1"} 输出 a = {"apple--foo", "banana--foo", "cherry--foo", "6363738-foo", "1-foo"} 可以在集合中使用字符串连接 >>> {i+'--foo' for i in a} {'banana--foo', '6

我必须向给定集合中的每个元素添加字符串--foo,我一直在努力尝试,但无法做到。真的有可能吗? 以下是布景

a = {"apple", "banana", "cherry", "6363738", "1"}
输出

a = {"apple--foo", "banana--foo", "cherry--foo", "6363738-foo", "1-foo"}

可以在集合中使用字符串连接

>>> {i+'--foo' for i in a}
{'banana--foo', '6363738--foo', 'apple--foo', 'cherry--foo', '1--foo'}

有几种方法可以实现这一点,下面是一个简单的for循环:

for i in range(len(a)):
    a[i] += "--foo"
你可以试试

a = {"apple", "banana", "cherry", "6363738", "1"}
{"{}--foo".format(i) for i in a}
或用于Python 3.6及更高版本

{f"{i}--foo" for i in a}
输出

{"apple--foo", "banana--foo", "cherry--foo", "6363738-foo", "1-foo"}

如需更改,请使用
lambda

>>> map(lambda x: x + '--foo', a)
输出:

>>> set(map(lambda x: x + '--foo', a)) # {'apple--foo', '6363738--foo', '1--foo', 'cherry--foo', 'banana--foo'}                                                                                                       

这只是为每个现有元素添加了一个额外的set元素--foo“;它不会将
--foo
附加到集合的每个元素。(也不会是
item+=“--foo”
,因为
str
值是不可变的。)这是一个输入错误,但您是正确的。现在就修复了。对于Python3.6和更高版本来说,这是正确的,但对于较低版本,格式会更好。人们希望3.6之前的部署正在迅速减少。