python - 在一行上组合并打印不同的变量
问题描述
我正在 Python 3 上制作一个简单的脚本。我有一个用户名、颜色和数字的列表。它们中的每一个都由 .txt 文件中的行分隔,如下所示:
文件图片:
这是代码:
user = open('user.txt', 'r').readlines()
color = open('color.txt', 'r').readlines()
number = open('number.txt', 'r').readlines()
for u in user:
for c in color:
for n in number:
generated = u+c+n
print(generated)
open('generated.txt', 'a+').write(generated)
前 100 个输出: https ://pastebin.com/Dc07ApbL
但我想要这样的东西:
solvethisproblem_userwhite1
solvethisproblem_userwhite2
solvethisproblem_userwhite3
solvethisproblem_userwhite4
solvethisproblem_userwhite5
solvethisproblem_userwhite6
solvethisproblem_userwhite7
solvethisproblem_userwhite8
solvethisproblem_userwhite9
solvethisproblem_userwhite10
solvethisproblem_userblack1
solvethisproblem_userblack2
solvethisproblem_userblack3
solvethisproblem_userblack4
solvethisproblem_userblack5
solvethisproblem_userblack6
solvethisproblem_userblack7
solvethisproblem_userblack8
solvethisproblem_userblack9
solvethisproblem_userblack10
solvethisproblem_useryellow1
solvethisproblem_useryellow2
solvethisproblem_useryellow3
解决方案
只需更换
user = open('user.txt', 'r').readlines()
color = open('color.txt', 'r').readlines()
number = open('number.txt', 'r').readlines()
和
user = open('user.txt', 'r').read().splitlines()
color = open('color.txt', 'r').read().splitlines()
number = open('number.txt', 'r').read().splitlines()
并替换generated = u + c + n
为generated = u + c + n + "\n"
.
该str.splitlines()
方法删除\n
会导致换行符的字符。
with
但请注意,使用关键字打开文件是更好的做法:
with open('user.txt') as u, open('color.txt') as c, open('number.txt') as n:
user = u.read().splitlines()
color = c.read().splitlines()
number = n.read().splitlines()
推荐阅读
- c++-cli - 在 ProcessExit 处理程序中检索退出代码?
- c# - .net 框架中用户脚本的受控执行
- git - 在包含许多移动文件的存储库上重新设置基准的最佳方法?
- python - Pyinstaller 创建空的 Dist 文件夹
- loops - 如何编写一个在最后一次迭代中执行不同操作的循环?
- java - 如何在JAVA中获取浏览器地址栏中显示的URL?
- python - 带有类型推导的 swig python 模板函数
- android - 访问 lambda 函数中的变量名
- azure - 交换槽中的名称在 azure 中显示舞台和生产的相同名称
- php - Laravel Eloquent 关系——如何结合 id 和 date 的两个关系?