使用for循环将输入分成两部分

问题描述 投票:0回答:3

这就是我陷入困境的地方,试图使用网络课程学习Python。

编写一个程序,采用“number1”+“number2”形式的单个输入行,其中两者都表示正整数,并输出两个数字的总和。例如,输入 5+12 时输出应为 17。

我们不应该使用 split() 或任何导入。

我认为解决方案是使用字符及其值 43 以及子字符串,但我不确定。我唯一确信的是,解决方案很简单,不需要花哨的函数或导入。

这是我认为可能接近解决方案的内容

S = input()
for position in range(0,len(S):
      #code for substrings 5 to number1, and 12 to number2
result = int(number1)+int(number2)
print(result)
python-3.x
3个回答
0
投票

使用

str.partition

line = raw_input()
num1, _, num2 = line.partition('+')
print(int(num1) + int(num2))

如果您无法使用

str.partition
并且想要使用
for
循环,那么
enumerate
应该会有所帮助:

for i, c in enumerate(line):
    if c == '+':
        # what goes here?

0
投票

回答

S = input()
for position in range(0, len(S)):
plus=S[position]
    if (plus!="+"):
      continue
    number1=int(S[0:position])
    number2=int(S[position+1:len(S)])
    print(number1+number2)

0
投票

不太明白“!”的作用在第四行的“plus”之后。您能详细说明一下吗? 😊

© www.soinside.com 2019 - 2024. All rights reserved.