Я пытаюсь заставить его прочитать файл и преобразовать строки в слова, а затем добавить слово к строке заданной длины. и вернуть текст. Это то, что у меня есть до сих пор.Напишите программу, которая обертывает файл на заданную длину строки
def file(file_name):
''' gets users file and checks its validity'''
try:
open(file_name).readlines()
except IOError:
print('File not found')
else:
file = file_name.split()
return file
def column_length(width):
'''gets column width and checks its validity'''
try:
if int(width) >= 1:
return int(width)
else:
print('illegal value')
except ValueError:
print('Illegal value')
def main():
file_name = input('Input file name? ')
width = input('column width? ')
lines = []
line = ''
for i in file_name:
if len(i) + len(line) > int(width):
lines.append(line)
line = ''
line = line + i + ' '
if i is file_name[-1]: lines.append(line)
return '\n'.join(lines)
if __name__ == "__main__":
main()
Когда я запускаю код, он, кажется, пропускает первые две функции и не возвращает никакого текста.
Если вы знаете, где я ошибаюсь, пожалуйста, дайте мне знать.
спасибо.
вы даже не называть их ... – zhangxaochen
Рассматривали ли вы отличный 'textwrap' модуль? – mgilson