可以读取输入但无法在 Pycharm 中执行脚本
Can read inputs but unable to execute script in Pycharm
我最近开始使用 Pycharm 并且我试图执行我的在线 类 之一从 coursera 提供的起始代码。代码是求两个数的gcd:
import sys
def gcd_naive(a, b):
current_gcd = 1
for d in range(2, min(a, b) + 1):
if a % d == 0 and b % d == 0:
if d > current_gcd:
current_gcd = d
return current_gcd
if __name__ == "__main__":
input = sys.stdin.read()
a, b = map(int, input.split())
print(gcd_naive(a, b))
我只能输入这两个数字,之后脚本根本不会执行,也不会抛出任何错误。我已附上我的问题的屏幕截图。
我真的很感激在正确的方向推动
问题是从标准输入读取。似乎这在 PyCharm 中似乎并没有真正起作用。这可能是一个重复的问题 (Reading from a file with sys.stdin in Pycharm), (using stdin in pycharm)。除非这是某种成绩,否则我建议忽略 stdin 方面而不是做...
input = sys.stdin.read()
只是做...
input = "4 5"
如果您使用 sys.stdin.read()
获取用户输入,您必须使用 Ctrl+Z 结束输入或 Ctrl+C(在 Windows 中)或 Ctrl+ Linux 中的 D。但是由于某种原因,它在 PyCharm console/debug.
中不起作用
您可以使用读取用户输入的标准方式(使用 input()
函数),只需将您的主要函数更改为:
if __name__ == "__main__":
a, b = map(int, input().split())
print(gcd_naive(a, b))
我最近开始使用 Pycharm 并且我试图执行我的在线 类 之一从 coursera 提供的起始代码。代码是求两个数的gcd:
import sys
def gcd_naive(a, b):
current_gcd = 1
for d in range(2, min(a, b) + 1):
if a % d == 0 and b % d == 0:
if d > current_gcd:
current_gcd = d
return current_gcd
if __name__ == "__main__":
input = sys.stdin.read()
a, b = map(int, input.split())
print(gcd_naive(a, b))
我只能输入这两个数字,之后脚本根本不会执行,也不会抛出任何错误。我已附上我的问题的屏幕截图。
我真的很感激在正确的方向推动
问题是从标准输入读取。似乎这在 PyCharm 中似乎并没有真正起作用。这可能是一个重复的问题 (Reading from a file with sys.stdin in Pycharm), (using stdin in pycharm)。除非这是某种成绩,否则我建议忽略 stdin 方面而不是做...
input = sys.stdin.read()
只是做...
input = "4 5"
如果您使用 sys.stdin.read()
获取用户输入,您必须使用 Ctrl+Z 结束输入或 Ctrl+C(在 Windows 中)或 Ctrl+ Linux 中的 D。但是由于某种原因,它在 PyCharm console/debug.
您可以使用读取用户输入的标准方式(使用 input()
函数),只需将您的主要函数更改为:
if __name__ == "__main__":
a, b = map(int, input().split())
print(gcd_naive(a, b))