2017-05-03 19 views
0

私はひどく勉強していますので、困っています。ユーザーが数字を入力できるようにするプログラムを作成しようとしています。終了するには '0'を押すと、特定の数字が表示される回数が出力されます。私は、数3のためにapearanceの数を見つける例えば、既に設定されているリストのためにそれをしたい場合:は、ユーザーが入力した一連の数字に数字が表示される回数をカウントします。

list= (2, 400, 3, 40, 100, 3, 3, 10, 0) 
print(list.count(3)) 

あなたはそれがないので、私はこれを作成したい場合は何をする必要があるかを見せてもらえセットリストに表示されますが、ユーザは一連の数字を入力し、「0」を押したときにカウントを表示するために終了しますか?

私のトライアルは、以下の通りですが、明らかに間違っています。つまり、 '0'を入力してループや終了しないようにしてください。助けてください。

答えて

1

これは動作するはずです。この

l = list() 

curr_number = -1 
while curr_number != 0: 
    curr_number = int(input("Number: ")) 
    l.append(curr_number) 
print("EXITED") 

print(l.count(3)) 
0

あなたの入力がどこで終了するかわかりません。一度に1つずつ入力するforループを作成するか、ユーザーにスペース区切りで1回入力するように要求するだけです。ような何か:input().split()は、あなたが何かを挿入し、それが終わることは決してありません毎回変わるよう

numbers = input("Enter the numbers") 
list1 = ... 

は、そうでなければ、ループを継続します。

0

これはいかがですか?

lst = [] 
while True: 
    try: 
     ans = int(input('enter the next number')) 
    except ValueError: 
     print('the value entered is not an integer') 
    else: 
     if ans == 0: 
      print(lst.count(3)) 
      break 
     else: 
      lst.append(ans) 
      continue 

我々は手動でbreak 0が渡されwhile Trueで無限ループを構築しています。 0が渡されず、入力が整数であるか、またはに変換できる場合は、値がリストに格納され、ユーザーはもう1つを入力するよう求められます。

0

を試してみてください。初めに分析を開始意味
^...$

list1=list() 
print('Enter the next number(0 to finish)') 
while True: 
    nr=input() 
    if nr.isdigit(): 
    if int(nr)!=0: 
     list1.append(int(nr)) 
    else: 
     break 
print(list1.count(3)) 
0

を、私は正規表現をしようとするだろう:

from re import match 

user = "" 

while(not match("^(\d+)+0$", user)): 
    user = input("Enter the next number (0 to finish) :") 

user = [int(n) for n in user.split()[:-1]] 

正規表現ストリングの終わりで終わる。
\d「私は数字がほしい!
+私は少なくとも私の前にグループを欲しいという意味です。
(...)グループを定義します。

https://regex101.com/r/ShdA3Z/1

0
myList = [] 
while True: 
    number = int(input('Enter your number (0 to quit): ')) 
    if number != 0: 
     myList.append(number) 
    else: 
     break 

choice = int(input('Enter the Number you want to check for occurrence: ')) 
print(myList.count(choice)) 

RESULT

Enter your number (0 to quit): 1 
Enter your number (0 to quit): 2 
Enter your number (0 to quit): 1 
Enter your number (0 to quit): 3 
Enter your number (0 to quit): 1 
Enter your number (0 to quit): 4 
Enter your number (0 to quit): 0 
Enter the Number you want to check for occurrence: 1 
3 
0
a = [] 

while True: 
    n = int(input()) 
    if number != 0: 
     a.append(number) 
    else: 
     break 

b = int(input()) 
print(a.count(b)) 
関連する問題