如果每个文件中的行数相同,请使用此代码。然而,一旦Python退出
带着
块时,文件将自动关闭。所以
不要在“with”块中包含close函数。
这个
阅读线()
方法将包含文件中每一行的列表作为列表项返回。结果变量将在每个索引处存储每个文件的列表。
例如[file1.readlines(),file2.readlines(),file3.readlines()…]
其中,类型(结果[0])为列表。
然后根据这一点采取行动。
from sys import argv, exit
if len(argv) < 2:
print("Missing command-line argument")
exit(1)
argumentList = argv[1:]
result = []
for arg in argumentList:
with open(arg, "r") as f:
result.append(f.readlines())
total_lines = len(result[0])
total_items = len(result)
# finding maximum space for each file.
maximum_list = []
for item in range(total_items):
maximum = 0
for data in range(total_lines):
result[item][data] = result[item][data].strip("\n")
length = len(result[item][data])
if length > maximum:
maximum = length
maximum_list.append(maximum)
for i in range(total_lines):
count = 0
while count < total_items:
data = result[count][i]
length_difference = maximum_list[count] - len(data) # For printing alignment
print(data + (" " * length_difference), end=" ")
count += 1
print()