2017-10-10 16 views
1

私は '##'と数字(例えば## 2)を入力するように求めています。しかし、私は2つの入力のユーザ入力をチェックする方法を知らない。私はを使用することを考えていましたが、もっと良い方法が必要であると確信しています。2つのキー入力のユーザ入力を確認する

私はそれを '##'のために作ったが、数字のために私はこれにどのようにアプローチすべきか分からない。しかし### 2に入るとクラッシュします。 split()メソッドを使って修正しようとしましたが、機能しませんでした。

userInput = input() 

def star_print(number): 
    return number 
number = int(userInput) 
for i in range(number, 0,-1): 
    print("*" * i) 
while (userInput == '##': 
    star_printer(userInput) 
    break 

ご意見はありますか?

乾杯

+0

期待される出力は次のように見て何を想定していますか? – mnickey

+0

@mnickey出力には、ユーザーが入力した星の数が表示されます。したがって、## 2の場合は、次の行に** then *を出力します。 – Vitzz

+0

これで、探しているものはほぼ逆三角形ですか? – mnickey

答えて

0

これは非常にエレガントではありませんが、私はあなたがこの仕事をし、それは素晴らしいことができます確信しています。

def star_print(number): 
    return number 

number = input() 

if '##' not in number: 
    print('You need to prepend two # marks before your number') 
else: 
    print('Valid input, continuing') 
    number = number.replace('#', '') 
    number = int(number) 

for i in range(0, number+1): 
    print("*" * i) 

*
**
***

for i in range(number+1, 0, -1): 
    print("*" * i) 

***
**
*

+0

正常に機能しました。ありがとう – Vitzz

+0

問題なし、お楽しみください – mnickey

関連する問題