2011-03-18 1 views
0

Я хочу, чтобы моя программа вывела CSV из входов. (Я подсчитываю количество раз, когда появляется конкретный ввод, я тогда хочу прочитать это в Excel.) Это просто для моего собственного использования, чтобы помочь с моим вводом данных, поэтому важна только форма вывода. Я вообще любитель, когда дело доходит до кода, поэтому простите мой обходный метод для того, чтобы программа зациклилась.Добавление разрыва строки к списку

SC= [] 
ender= 0 
while ender == 0: 
    Data = input('type in the letters:') 
    if 'x' in Data: 
      SC.append (1,) 
    else: SC.append (0,) 
    A = input('Done?:')  
    if 'done' in A: 
     ender = 1 
    else:quit 
else:SC.append('/n') 

print(SC) 

Это дает мне что-то вроде (1, 0, 1, '/n')
Что мне нужно (1, 0, 1, /n)

Я попытался SC.append(//n) -shouldn't это дать мне «сбежавших» / я хочу? - Это возвращает ошибку синтаксиса что указывает на первый /
Если я использую SC.append(/n) я получаю ту же ошибку синтаксиса, указывающий на /
Я также попытался использовать различные формы сырья строк в нет помогло.

Проблема с попыткой добавить эти разрывы строк в конце списка сводит меня с ума. Я не могу заставить python добавить в список литерал /n. Любая помощь приветствуется.

+1

Это ' "\ п" ', а не' "/ п" ' –

+0

Спасибо! Это спасло меня от последующей огромной головной боли. – Eli

ответ

0

Это, безусловно, не самый лучший способ сделать это.

Я только попытался сделать несколько изменений в коде:

sc = [] 
while True: 
    data = raw_input('type in the letters:') 
    if 'x' in data: 
     sc.append("1") 
    else: 
     sc.append("0") 
    checkDone = raw_input('Done?:') 
    if 'done' in checkDone: 
     break 
sc.append('\n') 
print(sc) 
scWithCommas = ",".join(sc) 
print(scWithCommas) 

Некоторые улучшения могут быть сделаны:

  1. if 'x' in data проверка означает, что если вы наберете xerox, 1 прилагается. Если вы наберете peter, в список добавляется 0. Он может быть изменен, поэтому xerox прилагает 1,0,0,0,1 и peter прилагает 0,0,0,0,0.

  2. check for done может избежать второго ввода от пользователя и вместо этого использовать первый вход.

+0

Функция соединения уже изменила мою жизнь. – Eli

0

Вы избегаете символа новой строки неправильно. Это \n (обратите внимание, вы набрали /n)

Так что вы хотите SC.append('\n')

+0

Я получаю [[1, 2, 3, '\ n'] (очевидно :)). Как я могу заставить его перейти к новой строке? –