0

そのため、学習プロジェクトとして個人用の Reddit ボットを作成しようとしていますが、入力にエラー例外を追加するのに問題があります。

ソースコード全体は次のとおりです: http://pastebin.com/DYiun1ux

ここで問題になっている部分は

 while True:
 if type(thing_limit) == int:
     print("That is a number, thanks.")
     break
 elif type(thing_limit) == float:
     print("You need a whole number.")
     sys.exit()
 elif type(thing_limit) == str:
     print("You need a whole number.")
     sys.exit()
 else:
     print("That is a number, thanks.")
     break

入力したユーザー名が有効かどうかを確認する方法がわかりません。ありがとう!

4

3 に答える 3

6

input常に文字列を返します。最良の選択は、結果を整数に変換しようとすることです。

try:
    thing_limit = int(thing_limit)
except ValueError:
    print("You need a whole number.")
    sys.exit()
else:
    print("That is a number, thanks.")
于 2015-11-09T02:49:05.513 に答える
0

reddit ソース コードで、有効なユーザー名を 3 文字以上 20 文字以下で、正規表現に一致するものとして定義しています\A[\w-]+\Z

于 2015-11-24T23:53:44.700 に答える