【问题标题】:Trying to call range in Array (Lists) in Python 3尝试在 Python 3 中调用数组(列表)中的范围
【发布时间】:2016-04-07 04:37:53
【问题描述】:
enter code here


from array import *

# Set up Array
firstArray = array('i', [0,0,0,0,0,0])
secondArray = array("i",[0,0,0,0,0,0])

# Program Greeting
print("This program prompts the client for 6 numbers.")
print("If a number is over 100, move it to a second array.")
print()

# Load numbers from client
for i in range(0,5,1):
    numIn = int(input("Enter a number: ")) == firstArray[i]
    firstArray[i] = numIn

# Move numbers over 100 to 2nd array
print("Searching through the array and moving numbers.")
secArrayCntr = 1
for i in range(0,5,1):
    if firstArray[i] <= 1:
        secondArray[secArrayCntr] = firstArray[i]
        secArrayCntr = secArrayCntr + 1

# Print First Array
print("Displaying the first array.")
for i in range(0,5,1):
    print(firstArray[i])

# Print Second Array
print("Displaying ", secArrayCntr, " numbers over 100.")
for i in range(1, secArrayCntr, 1):
    print(secondArray[i])

''' 不明白为什么它显示0。如果你们有帮助,请尝试让代码看起来对新手程序员来说很熟悉。任何提示都会很棒。 谢谢。

大_B '''

''' 附: 这是我的第一篇文章,关于将代码添加到我的文本框中的提示,而不必手动添加四个空格,这会很高兴知道。

【问题讨论】:

标签: python arrays list python-3.x


【解决方案1】:

它显示零是因为您将一个可能为 False 的布尔值作为值。

numIn = int(input("Enter a number: ")) == firstArray[i]

如果您想让用户输入数字,只需将其放入变量中,然后放入数组中(如果不会发生其他操作,您可以直接进行)。检查您的代码的以下转换:

from array import *

# Set up Array
firstArray = array('i', [0,0,0,0,0,0])
secondArray = array("i",[0,0,0,0,0,0])

# Program Greeting
print("This program prompts the client for 6 numbers.")
print("If a number is over 100, move it to a second array.")
print()

# Load numbers from client
for i in range(0,5,1):
    number = int(input("Enter a number: ")) 
    firstArray[i] = number

# Move numbers over 100 to 2nd array
print("Searching through the array and moving numbers.")
secArrayCntr = 1
for i in range(0,5,1):
    if firstArray[i] > 100: # If it's over 100 than it can't be <1
        secondArray[secArrayCntr] = firstArray[i]
        secArrayCntr = secArrayCntr + 1

# Print First Array
print("Displaying the first array.")
for i in range(0,5,1):
    print(firstArray[i])

# Print Second Array
print("Displaying ", secArrayCntr, " numbers over 100.")
for i in range(1, secArrayCntr, 1):
    print(secondArray[i])

,结果为:

This program prompts the client for 6 numbers.
If a number is over 100, move it to a second array.

Enter a number: 3
Enter a number: 300
Enter a number: 700
Enter a number: 4
Enter a number: 7
Searching through the array and moving numbers.
Displaying the first array.
3
300
700
4
7
Displaying  3  numbers over 100.
300
700

要获得超过 100 的数字(就像在您的一个 cmets 中一样,我不得不更改这一行):

if firstArray[i] <= 1:

,到这里:

if firstArray[i] > 100:

【讨论】:

  • 非常感谢。这很好用。感谢您提供有用的见解。
猜你喜欢
  • 1970-01-01
  • 2018-03-30
  • 2017-12-13
  • 2016-12-28
  • 2021-07-14
  • 2012-10-12
  • 1970-01-01
  • 2022-01-03
  • 1970-01-01
相关资源
最近更新 更多