我想并排连接两个字符串。但是,当我运行代码时,字符串将被保存为一个字符串。我希望它并排隔开一个空格。
path = '../data/img'
mask = '../data/canny_mask'
text_file = open("train.lst", "w")
for file in os.listdir(path):
img_name = file[:]
for file in os.listdir(mask):
mask_name = file[:]
text_file.write(str('data/img')+str(img_name)+'\n')+text_file.write(str('data/canny_mask')+str(mask_name)+'\n')
text_file.close()
答案 0 :(得分:2)
在这里,您两次致电text_file.write()
:
text_file.write(str('data/img')+str(img_name)+'\n')+text_file.write(str('data/canny_mask')+str(mask_name)+'\n')
在第一个呼叫中,有一个换行符'\n'
。如果要用空格代替换行符,请在该位置更改代码。
我还建议不要在两个调用之间插入+
。将它们写在单独的行中,或者只打一个电话。
答案 1 :(得分:1)
类似的事情可能会有所帮助:
for file in os.listdir(mask):
mask_name = file[:]
" ".join('data/img', str(img_name), 'data/canny_mask', str(mask_name))