我正在编写一个程序,它将打开一个指定的文件,然后“换行”所有超过给定行长度的行,并在屏幕上打印结果。
def main():
filename = input("Please enter the name of the file to be used: ")
openFile = open(filename, 'r+')
file = openFile.read()
lLength = int(input("enter a number between 10 & 20: "))
while (lLength < 10) or (lLength > 20) :
print("Invalid input, please try again...")
lLength = int(input("enter a number between 10 & 20: "))
wr = textwrap.TextWrapper()
wr.width = lLength
wr.expand_tabs = True
wraped = wr.wrap(file)
print("Here is your output formated to a max of", lLength, "characters per line: ")
print(wraped)
main()
当我这样做而不是包装时,它会将文件中的所有内容打印成带有逗号和括号的列表,而不是将它们包装起来。
答案 0 :(得分:2)
textwrap.TextWrapper.wrap
“返回输出行列表,没有最终换行符。”
您可以将它们与换行符连接在一起
print('\n'.join(wrapped))
或迭代并一次打印一个
for line in wrapped:
print(line)