2017-01-14 9 views
2

私はPythonの完全な初心者です。私は自分のGCSEコンピュータサイエンスコースのコードを改善しようとしています。 私が行うことができるようにしたいすべてがここ7 に入力された桁数が、私がこれまで持っているものの全てれる限度である:Pythonで入力された文字列の長さを制限します

print("Hello") 
time.sleep(0.5) 
print("What is your 7-digit product number?") 
while True: 
try: 
    productnumber= (str(int(input(" ")))) 
    break 
except ValueError: 
    print("Please only enter numbers") 
    time.sleep(1) 
    print() 
    print("What is your 7-digit number?") 

すべてのヘルプは高く評価され、私はネストされたループを追加しようとしたが、I今まで私が言ったように、これまで何もしていなかったので、私はコンプリート初心者です。 ありがとう!

+0

あなたの投稿を編集し、あなたが見ている正確な/特定のエラーを追加してください。これは、他の人があなたをより簡単に助けるのを助けます。 – xlm

+0

@xlm私はすでに私の答えを得ているが、私は間違いなくそれを行うだろう、フィードバックのおかげで! – khushi

+0

if len(productnumber)<= 7'をチェックしますか? –

答えて

2

while True:で始まる無限ループ内に何もないので、上記のコードは正しくインデントされません。私はちょうどtry - exceptブロックがそこに入ると思われると思う。エントリを7文字に制限する必要があるのはifです。以下を考慮してください。

while True: 
    try: 
    productnumber = str(int(input(" "))) 
    if len(productnumber) > 7: 
     print("You may only enter seven digits") 
    else: 
     break 
    except ValueError: 
    print("Please only enter numbers") 
    time.sleep(1) 
    print() 
    print("What is your 7-digit number?") 

len関数は文字列の長さを計算します。

あなたの変数名にcamelCaseを使用するなど、コードを良くするいくつかの方法があります。

ハッピーパイソン学習!

+0

あなたの超高速返信ありがとう、本当にありがとう!アドバイスをいただきありがとうございました。私はあなたのコードを私のものに組み込み、完璧に機能しました!そんなにありがとう、あなたは絶対的な人生の節約になります! – khushi

+0

[PEP-8](https://www.python.org/dev/peps/pep-0008/#id45)をお読みください。 'camelCase'ではなく、' snake_case'がメソッド名と変数名に推奨されます。これはJavaScriptではありません。 – MattDMo

+0

@MattDMo私は見る!私に言ってくれてありがとう! – khushi

関連する問題