我希望我的程序从输入中生成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)
- 这不会给我“我想要的'转义'/
吗? - 它返回一个语法错误,指向第一个/
>
如果我使用SC.append(/n)
,我会收到指向/
的相同语法错误
我也试过使用各种形式的原始字符串无济于事。
尝试在列表末尾添加这些换行符的问题一直让我发疯。我似乎无法让python将文字/n
附加到列表中。任何帮助将非常感激。
答案 0 :(得分: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)
可以进行一些改进:
if 'x' in data
检查表示如果键入xerox
,则会附加1。如果键入peter
,则列表中会附加0。它可以更改,以便xerox
附加1,0,0,0,1和peter
附加0,0,0,0,0
。
检查done
可以避免用户的第二次输入,而是使用第一个输入。
答案 1 :(得分:0)
你正在逃避换行符错误。它是\n
(通知您键入了/n
)
所以你想要的是SC.append('\n')