我想知道如何将以下C ++代码翻译成Python代码。
int n;
while (cin >> n)
cout << n <<endl;
我的猜测是这样的
import sys
while n = raw_input():
print n + "\n"
但它不起作用......请帮帮我。谢谢。
答案 0 :(得分:1)
也许是这样的:
import sys # why?
n = "string"
while n:
n = raw_input()
print n + '\n'
然而
while n = raw_input(): # incorrect.
这不起作用,因为:
n
未定义==
,尽管不是在这种特定情况下,因为它基本上意味着n
等于empty string( '' )
示例:
>>> raw_input() == ''
True
答案 1 :(得分:1)
这是因为Python中的n = raw_input()
没有返回值,而C ++中的cin >> n
则返回值。 (这使程序员免于将==
替换为=
)
你可以尝试类似的东西。
n = raw_input("Enter Something: ")
while n:
print n
n = raw_input("Enter Something: ")
测试运行:
>>>
Enter Something: Monty
Monty
Enter Something: Python
Python
Enter Something: Empty Line Next
Empty Line Next
Enter Something:
P.S - 在这种情况下不需要import sys
(如果您未在代码中的任何其他地方使用它)。此外,print
语句会自动将光标移动到下一行,因此在这种情况下您无需添加\n
。