Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.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 - Fatal编程技术网

Python:在区分列表中的最后一项时,如何将特定字符添加为将列表转换为字符串?

Python:在区分列表中的最后一项时,如何将特定字符添加为将列表转换为字符串?,python,Python,我想将列表转换为包含方括号和逗号的字符串,然后与另一个字符串连接 Input: list1 = [1, 4, 3, 2, 5] str1 = 'is a list.\n' Expected output: [1, 4, 3, 2, 5] is a list. 我尝试的是这样的: path = [1, 4, 3, 2, 5] str1 = 'is a list.\n' ss = '[' for item in path: ss += str(item) + ',

我想将列表转换为包含方括号和逗号的字符串,然后与另一个字符串连接

Input:
    list1 = [1, 4, 3, 2, 5]
    str1 = 'is a list.\n'

Expected output:
    [1, 4, 3, 2, 5] is a list.
我尝试的是这样的:

path = [1, 4, 3, 2, 5]
str1 = 'is a list.\n'
ss = '['
for item in path:
    ss += str(item) + ', '
ss += '] ' + str1
print(ss)
但这会产生以下输出:

[1, 4, 3, 2, 5, ] is a list.
如何防止在转换过程中生成最后一个逗号“”

我正在考虑根据该项目是否是列表中的最后一个项目,采取特定的流程

但我怎么知道呢

或者还有其他解决办法吗


真的很感激

打印功能使用对象的
\uuuu str\uuuuu
\uuuu repr\uuuu
魔术方法来渲染它们。知道您可以执行以下任一操作:

print(路径“是一个列表”)
或使用字符串格式:

print(f“{path}是一个列表。”)
这是一种糟糕的做法:

path = [1, 4, 3, 2, 5]
str1 = 'is a list.\n'
ss = '['
for i in range(len(Path)):
    if i != (len(path)-1):
        ss += str(path[i]) + ', '
    else:
        ss += str(path[i])
ss += '] ' + str1
print(ss)
一个好的方法是使用f字符串

print(f"{path} is a list.\n")
如果你不喜欢f字串,那么

print("{} is a list.\n".format(path))

这是不必要的。尝试打印
str(path)
的结果。您的预期输出也有试用逗号。是的,您的预期输出看起来与实际输出非常相似。如果您坚持手动执行此操作,则该方法可能会帮助您。。。i、 e.
ss+=','。加入(str(项目)表示路径中的项目)
感谢您指出这一点。已更正。这很糟糕。用
+
+=
连接字符串是一种不好的方法,应该不惜一切代价避免。甚至没有说解决方案使用了多个反模式。是的,我知道。我想要这个实现的原因是需要将这个输出格式化为一个文件。很抱歉,我用我的手机做了这件事,我编辑了答案。
print
实际上使用了
\u str\u
,如果没有实现,则返回到
\uuuu repr\uuuu
。编辑了我的答案