我想在python脚本中输入一些字符串,这样我就可以在我的计算机上进行测试而不是http://www.ideone.com。但是我这样做的方式都是将字符串组合在一起,而不是将它们分成几行或单独的行。
我的python代码是0001.py
testCases = int(input())
Counter = 0
while Counter < testCases:
Line = str(input())
countTwo = 1
for i in range(int(len(Line)/2)):
if countTwo % 2 == 0:
print(Line[i], end='')
countTwo += 1
print('\n', end='')
Counter += 1
我正在尝试回复'5''你好''你好''你好''你好'| python3 001.py
答案 0 :(得分:0)
尝试
echo -e "line1\nline2\nline3"
这是有效的,因为程序逐行输入。这个echo语句将输入分隔为线条,因此它的功能就像你想要的那样。
答案 1 :(得分:0)
现在编辑您已经提供了操作系统。
对于Linux,这是有效的(归功于@pteronewone,他也回答):
$ echo -e "5\nhello\nhello\nhello\nhello\nhello" | python3 001.py
e
e
e
e
e
对于Windows(留待此处以备将来参考),这是丑陋且效率低下但可行(Windows 7 cmd.exe shell):
C:\> (echo 5 & echo hello & echo hello & echo hello & echo hello & echo hello) | 001.py
e
e
e
e
e
(不确定你要完成的是什么,但这就是你的脚本输出的内容。)
其他一些建议:
将输入()包装在try / except中。在你的例子中,你只包括四个“你好”,但告诉它期望五个,所以它试图读取第五个输入,导致异常。
try:
Line = str(input())
except:
break
使用整数除法运算符//
,因此您无需在float
中从int
转换回range()
。
for i in range(len(Line) // 2):