如何在Python中读取用户输入

2024-06-16 16:01:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我是Python的初学者,我试图在一个简单的编程竞赛问题中读取两个数字。在

# Codeforces New Year 2013 Contest;
# http://codeforces.com/contest/379/problem/A

import sys;

def main ():
    a = input ();
    b = input ();
    resto = 0;
    result = 0;

    while (a > 0):
        a-=1
        result += 1;
        resto += 1;

        if (resto >= b):
            resto -= b;
            a += 1;

    print result;

main ();

如果我试图用4 2(用空格隔开)运行程序,会出现以下错误:

ValueError: invalid literal for int() with base 10: '4 2'

但如果我输入4[enter],然后输入2[enter],程序运行时不会出现任何问题。在

我如何从Python中读取STDIN,就像C++一样?在

编辑:很抱歉搞砸了!我通常以这种方式运行输入代码:

C++://&检验<

Python:Python主.py<;测试


Tags: comhttpnewinputmain编程数字result
2条回答

根据您的语法,我假设您使用的是python2。在

使用raw_input从控制台读取字符串,然后在解析int之前手动拆分它:

s = raw_input()
tokens = s.split()
a = int(tokens[0])
b = int(tokens[1])

你可以用系统argv它与许多其他编程语言类似:

import sys

for a in sys.argv:
    print a

如果您像这样从命令行调用此程序:

^{pr2}$

然后打印:

test.py
10
20
30
40
50

所以您可以使用索引访问参数:

print sys.argv[2] #prints 20

还记得吗系统argv包含字符串-因此,如果要像处理整数一样处理输入,请记住先按如下方式转换它们:

int(sys.argv[2])

相关问题 更多 >