печать кортежа с вкладкой между значениями - PullRequest
2 голосов
/ 15 сентября 2011

У меня есть текстовый файл, подобный приведенному ниже:

this000is00a00test001251!!
this000is00a00test001251!!
this000is00a00test001251!!
this000is00a00test001251!!

У меня есть следующий код для его анализа:

def file_open():
    my_file = open(r'C:\Users\test\Desktop\parse_me.txt','r', encoding='cp1252')
    return my_file

def parse(current_line):
    seq_1 = (current_line[0:4])
    seq_2 = (current_line[7:9])
    seq_3 = (current_line[11:12])
    seq_4 = (current_line[14:18])
    seq_5 = (current_line[20:24])
    return(seq_1, seq_2, seq_3, seq_4, seq_5)

def export_file(current_file):
    for line in current_file:
        x = parse(line)
        print (x)

export_file(file_open())

Вот вывод, который я получаю в интерпретаторе:

('this', 'is', 'a', 'test', '1251')
('this', 'is', 'a', 'test', '1251')
('this', 'is', 'a', 'test', '1251')
('this', 'is', 'a', 'test', '1251')

То, что я хочу увидеть, это текст, отформатированный так:

this    is    a    test    1251

или

this,is,a,test,1251

Есть идеи?Или у вас есть хорошие ссылки, которые объясняют форматирование текста в 3.0?

Спасибо!

1 Ответ

13 голосов
/ 15 сентября 2011

Если вы хотите присоединиться к списку строк, вы можете использовать join() примерно так:

list_of_strings = ['one', 'two', 'three']
print "\t".join(list_of_strings) #\t is the tab character

Вывод:

one    two    three

Для запятых просто замените "\t".joinс ",".join.Join также будет работать с кортежами, которые используются в вашем примере кода (он работает с любым итератором).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...