【问题标题】:how can I append the values of the print function in python如何在 python 中附加打印函数的值
【发布时间】:2017-08-02 01:52:55
【问题描述】:

这是打印功能给我的

/home/codes/paths/0000001090.png
/home/codes/paths/0000001091.png
/home/codes/paths/0000001092.png
/home/codes/paths/0000001093.png

我想拥有它

[/home/codes/paths/0000001090.png
/home/codes/paths/0000001091.png
/home/codes/paths/0000001092.png
/home/codes/paths/0000001093.png]

所以我尝试使用 list.append

raw_image_path= image_path+str(image_id).zfill(10)+'.png'
all_images = []   
all_images.append(raw_image_path)
print (all_images)

但它似乎单独附加每个打印值

    [/home/codes/paths/0000001090.png]
    [/home/codes/paths/0000001091.png]
    [/home/codes/paths/0000001092.png]
    [/home/codes/paths/0000001093.png]

我该如何解决这个问题?

【问题讨论】:

  • 打印一些东西而不去下一行做print "[",用尾随逗号继续在同一行打印(在python 3你会做print("[", end="")
  • 将提及 this question 密切相关,并可能会解决您的问题。

标签: python python-2.7 list append


【解决方案1】:

您似乎有一个循环,并且每次迭代都创建和打印一个新列表。

for ...:
    raw_image_path= image_path+str(image_id).zfill(10)+'.png'
    all_images = []   # new list
    all_images.append(raw_image_path)
    print (all_images) # printing a single list
# 'len(all_images) == 1' here

选项:

1) 将all_images 移到循环之前的外部,并在内部追加,然后在外部,之后打印

2) 改为尝试列表推导。

In [1]: all_images = [ "{}{}.png".format('/', str(image_id).zfill(10)) for image_id in range(1090, 1095) ]

In [2]: all_images
Out[2]:
['/0000001090.png',
 '/0000001091.png',
 '/0000001092.png',
 '/0000001093.png',
 '/0000001094.png']

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多