Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.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 3.x 字符串格式_Python 3.x_Python - Fatal编程技术网

Python 3.x 字符串格式

Python 3.x 字符串格式,python-3.x,python,Python 3.x,Python,我有一个列表过滤器=['a','b','c']。我需要从列表中框出以下字符串 “项目-a项目-b项目-c”。哪种方法最有效?通常,列表过滤器包含100到200个项目,每个项目的长度为100到150。这不会导致溢出吗?支持的字符串的最大长度是多少?您可以使用(我相信join在Python 3.0中是相同的): 您可以使用(我相信join在Python 3.0中也是一样的): 一种更干净的方法: filter = ['a', 'b', 'c'] " ".join(["item -%s" % val

我有一个列表过滤器=['a','b','c']。我需要从列表中框出以下字符串 “项目-a项目-b项目-c”。哪种方法最有效?通常,列表过滤器包含100到200个项目,每个项目的长度为100到150。这不会导致溢出吗?支持的字符串的最大长度是多少?

您可以使用(我相信
join
在Python 3.0中是相同的):

您可以使用(我相信
join
在Python 3.0中也是一样的):


一种更干净的方法:

filter = ['a', 'b', 'c']
" ".join(["item -%s" % val for val in filter])

这适用于大型阵列,例如,
filter=['a'*1000]*1000

一种更干净的方法:

filter = ['a', 'b', 'c']
" ".join(["item -%s" % val for val in filter])

这适用于大型阵列,例如,
filter=['a'*1000]*1000

再次使用
join

但是使用
f-string
,这将是:

filter = ['a', 'b', 'c']
print(" ".join([f"item -{val}" for val in filter]))

如前所述,避免使用关键字来命名您的VAR。

再次使用
加入

但是使用
f-string
,这将是:

filter = ['a', 'b', 'c']
print(" ".join([f"item -{val}" for val in filter]))

如前所述,避免使用关键字来命名变量。

不要将
过滤器
用作变量名。“过滤器”是一个Python函数。很多东西都是Python内置的,所以很难不时不时地使用它们。它通常只影响它所在的代码块,因此与其试图记住每个内置函数名,不如尽量避免使用您知道和使用的函数名,如果您错过了一个并且需要使用它,则可以稍后重命名变量。其实内置函数并不多。略多于80。IDE通常会突出显示
filter
等特殊函数。不要将
filter
用作变量名。“过滤器”是一个Python函数。很多东西都是Python内置的,所以很难不时不时地使用它们。它通常只影响它所在的代码块,因此与其试图记住每个内置函数名,不如尽量避免使用您知道和使用的函数名,如果您错过了一个并且需要使用它,则可以稍后重命名变量。其实内置函数并不多。刚刚超过80。IDE通常会突出显示像
过滤器
这样的特殊函数。您可能也希望删除结果中多余的空格。@Dominic Rodger,是的,我们可以删除前导空格<代码>加入(l)
不会给出普拉布想要的结果。字符串将以
'a item…'
开头,而不是以
'item-a…。
您可能也希望从结果中删除多余的空格。@Dominic Rodger,是的,我们可以修剪前导空格<代码>加入(l)
不会给出普拉布想要的结果。字符串将以
'a item…'
开头,而不是
'item-a…。