【问题标题】:Can you access a single input that has been asked multiple times您能否访问已被多次询问的单个输入
【发布时间】:2020-01-27 12:16:15
【问题描述】:
N = int(input("Upišite broj od 1 do 50: "))
X = int(input("Upišite broj od 1 do 10: "))

for i in range(1, N+1):
    Zg = int(input("Upišite broj od 1 do 9: "))
    Zi= int(input("Upišite broj od 1 do 9: "))

if Zi == Zg:

由于ZgZi 变量将被多次赋值,那么存储这些值以便以后访问的最佳方法是什么?如何在不增加 50 个变量的情况下做到这一点?

编辑:不要介意第二种语言。我想要做的是只访问一个输入。

【问题讨论】:

  • 查看lists 是什么
  • 这非常不清楚。您想从上一次迭代中访问Zg 的值吗?还是从所有迭代中收集值并全部处理?怎么样?
  • 我知道列表是什么,但它们怎么能帮助我呢?

标签: python for-loop input


【解决方案1】:

(你应该按照PEP8 guide来命名变量:使用小写)。

如果要在每个条目之后检查变量,则需要将if 条件放入循环中,例如:

n = int(input("Upišite broj od 1 do 50: "))

for i in range(1, n + 1):
    zg = int(input("Upišite broj od 1 do 9: "))
    zi = int(input("Upišite broj od 1 do 9: "))
    if zi == zg:
        print("Brojevi su jednaki")  # google translated ;-)

如果将if 条件放在for 循环之后,则只计算最后一个条目。请注意,zgzi 变量可能未初始化(如果 n 为 0)。

n = int(input("Upišite broj od 1 do 50: "))

for i in range(1, n + 1):
    zg = int(input("Upišite broj od 1 do 9: "))
    zi = int(input("Upišite broj od 1 do 9: "))

if zi == zg:  # <- check only the last values
    print("Brojevi su jednaki")  # google translated ;-)

如果您希望用户输入值然后检查,您需要将值存储在列表中。例如,您可以存储情侣(zg, zi)

n = int(input("Upišite broj od 1 do 50: "))

entries = []
for i in range(1, n + 1):
    zg = int(input("Upišite broj od 1 do 9: "))
    zi = int(input("Upišite broj od 1 do 9: "))
    entry = zg, zi
    entries.append(entry)

# check the entries
for i, (zg, zi) in enumerate(entries, 1):
    if zi == zg:
        print(f"{i}: Brojevi su jednaki: {zg} == {zi}")

这是一个执行示例:

Upišite broj od 1 do 50: 2
Upišite broj od 1 do 9: 4
Upišite broj od 1 do 9: 6
Upišite broj od 1 do 9: 2
Upišite broj od 1 do 9: 2
2: Brojevi su jednaki: 2 == 2

【讨论】:

  • 谢谢你,我用大写,因为它是学校的东西,我必须输入确切的变量名。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-21
  • 2013-05-18
  • 1970-01-01
  • 2019-01-08
  • 2020-04-03
相关资源
最近更新 更多