簡単なPythonプログラム構造演習

1.推測ゲーム。

0~9の間の整数プログラムにおいて予め設定された、キーボードを介してユーザが推測するように、予め設定された数よりも大きい場合、

「残念ながら、あまりにも大きな」表示;以下、所定数よりもあれば、ディスプレイ「残念ながら、小さすぎ」;というように、番号が推測されるまで、ショー「前

N回測定し、あなたはそれを推測しました!」、N回のユーザ入力数字の数です。

from random import*
x=randint(0,9)

for i in range(10):
    y=eval(input("请输入一个0到九的数:"))

    if x<y:
        print("遗憾,太大了")
    elif x>y:
        print("遗憾,太小了")
    else:
        print("预测"+str(i+1)+"次,""你猜中了")
        break

ここに画像を挿入説明
この問題は、ランダムな整数を生成するrandintランダムライブラリ()関数と呼ばれ、ループのための乱数を比較する内部デジタルユーザ入力、

入力が数字で生成された乱数と等しいデジタル入力の大きさを調整することにより先端部は、ループ、プログラム終了から抜け出します。

2.統計の文字の数が異なります。

彼の文字列からユーザーのキーボード入力、出力の統計と英語、数字、スペースや他のプログラムを書きます

文字の数。

x=input("输入你的字符串:")
a=b=c=d=0
for i in x:
    if ord('a')<=ord(i)<=ord('z') or ord('A')<=ord(i)<=ord('Z'):     
        a=a+1
    elif ord('0')<=ord(i)<=ord('9'):
        b=b+1
    elif ord(i)==ord(' '):
        c=c+1
    else:
        d=d+1
print("这一行字符中字母的数量是:{},数字的数量是:{},空格数量是:{},其他字符的数量是:{}。".format(a,b,c,d))

ここに画像を挿入説明

組み込み関数の順序()単一の文字エンコードされたUnicode表現の値を返します。入力された文字列をループするために、文字の初期値0の4種類を形成し、

文とトラバース増分を決定することによって、文字クラスを区別するための文字の数。

3.推測ゲーム。演習4.1を再プログラミングする、コンピュータがランダムにゲームの変化の0〜100、他のルールとの間の範囲のプリセット番号を生成してみましょう。

from random import*
x=randint(0,100)

for i in range(100):
    
    try:
        y=eval(input("请输入一个0到100的数:"))
        if x<y:
            print("遗憾,太大了")
        elif x>y:
            print("遗憾,太小了")
        else:
            print("预测"+str(i+1)+"次,""你猜中了")
            break
    except NameError:
        print("输入格式有误!")
    finally:
        print("执行完毕!")

ここに画像を挿入説明

例外処理の単純な加算、非数値型の処理

4.1は、ユーザからの入力を受信して​​処理することができるように、5例外処理を変更しました。

from random import*
x=randint(0,9)
print("{0:*^50}".format("猜数字游戏"))
for i in range(10):
    
    try:
        y=eval(input("请输入一个0到9的数:"))
        if x<y:
            print("遗憾,太大了")
        elif x>y:
            print("遗憾,太小了")
        else:
            print("预测"+str(i+1)+"次,""恭喜你,你猜中了!")
            break    
    except NameError:
        print("输入格式有误!")
    else:
            print("没关系,继续加油!")   
    finally:
        print("这是第{}猜".format(i+1))
print("{0:*^30}".format("游戏结束"))

ここに画像を挿入説明

この問題は、比較的、各サイクルが最終的にユーザーにプロンプ​​ト文を完了するだけでなく、他の追加コンテンツを追加し、タイトルとタイトルIVのバージョンを最適化されています。

公開された705元の記事 ウォンの賞賛833 ビュー136万+

おすすめ

転載: blog.csdn.net/sinat_38682860/article/details/105202260