我对python非常陌生,所以我甚至不知道如何启动它。
我有几个TFS文件,我需要读取它们,并从其他文件中创建一个具有特定行和列的新文件。
例如:
档案1:
x 1 # A
y 2 % B
z 3 * C档案2:
x1 4 # A
y1 5 % B
z1 6 * C档案3:
x2 7 # A
y2 8 % B
z2 9 * C预期输出文件:
y 2 B
y1 5 B
y2 8 B (所有文件中的第1行和第0、1、3列)
发布于 2022-06-07 13:36:08
下面是如何使用内置enumerate()方法:
result = []
row = 1
cols = [0, 1, 3]
files = ["file1.tfs", "file2.tfs", "file3.tfs"]
for file in files:
with open(file) as f:
for i, line in enumerate(f):
if i == row:
result.append(" ".join(char for j, char in enumerate(line.split()) if j in cols))
break
print("\n".join(result))输出:
y 2 B
y1 5 B
y2 8 B为了方便测试这段代码,我在这里用字符串列表替换了文件:
result = []
row = 1
cols = [0, 1, 3]
fs = [
["x 1 # A", "y 2 % B", "z 3 * C"],
["x1 4 # A", "y1 5 % B", "z1 6 * C"],
["x2 7 # A", "y2 8 % B", "z2 9 * C"]
]
for f in fs:
for i, line in enumerate(f):
if i == row:
result.append(" ".join(char for j, char in enumerate(line.split()) if j in cols))
break
print("\n".join(result))输出:
y 2 B
y1 5 B
y2 8 Bhttps://stackoverflow.com/questions/72531908
复制相似问题