声明、辞書、循環中にあれば[Pythonは実際にエントリから、プログラミング]

章V .IF声明

場合は、循環のための他の類似したが、戻って追加する必要があります:

5.1およびまたは論理演算子

car = "BMW"
print(car == "bmw") # 输出 False
print(car.lower() == "bmw") # 输出 True

if car == "1":
    print("Yes")
else:
    print("No")

age_0 = 22
age_1 = 18
if age_0 > 21 and age_1 > 21:
    print("Both > 21")
else:
    print("Someone <= 21")

if (age_0 > 21) or (age_1 > 21): # 可以加括号增强可读性
    print("Someone > 21")
else:
    print("Both <= 21")

値がリストにあるかどうかを確認中5.2

requested_toppings = ['mushrooms', 'onions', 'pineapple']
print('mushrooms' in requested_toppings) # 输出 True

同様にいないかどうかをチェックで、リスト内の値ではありませんか

banned_users = ['andrew', 'carolina', 'david']
user = 'marie'
if user not in banned_users:
    print(user.title() + ", you can post a response if you wish")
# 输出 Marie, you can post a response if you wish

目的:マッププログラムでは、既知の場所のリストに含まれている送信したユーザの位置を確認する必要があり、登録プロセスのエンドユーザは、あなたは彼がユーザー名のリストに含まれるユーザ名を提供しているかどうかを確認する必要があり、通常あり比較する最初のユーザー名すべて小文字に変換し、

5.3 IF-のelif、他の構造

Pythonは追加した場合、elifの - 他の背後にあります:

C ++はのif-elseのif-else構造のプラスの背後にあります{}

digit = 12
if digit < 4:
    print("Your admission cost is $0.")
elif digit < 18:
    print("Your admission cost is $5.")
else:
    print("Your admission cost is $10.")

他に限り、あなたは最後の条件を知っているのであれば、コードが実行されるすべてのテストやelifのは、テストする場合、条件が満たされていないとして、ELIF elseブロックの代わりにコードブロックを使用して検討する必要があり、すべての包括的な文です。我々は適切な条件が満たされたときにのみ確認することができますので、あなたのコードが実行されます

# 披萨店点披萨
# requested_toppings = []
requested_toppings = ['mushrooms', 'green peppers', 'extra cheese']
if requested_toppings:  # 列表非空时执行
    for requested_topping in requested_toppings:
        if requested_topping == 'green peppers':
            print("Sorry, we are out of green peppers right now.")
        else:
            print("Adding " + requested_topping + ".")
    print("\nFinished making your pizza!")
else:
    print("Are you sure you want a plain pizza?")

輸出

Adding mushrooms.
Sorry, we are out of green peppers right now.
Adding extra cheese.

Finished making your pizza!


章VI。辞書

{:、:} 6.1辞書を使用して

私たちは、大学で、このような辞書の表現を作成するなど、人を実世界の状況をシミュレートすることができます、あなたはその情報を格納することができ、辞書を使用します。名前、年齢、住所、職業、および任意の側面を記述するために

Pythonの辞書に直列である键-值任意のPythonオブジェクトは、辞書の値として使用することができ、(マップC ++に類似)の

指定した辞書名を角括弧の中にキーを置く:ディクショナリの値にアクセス

# 使用字典
alien_0 = {'color': 'green', 'points': 5}
print(alien_0['points']) # 输出5

キーの追加-の値
と値のペア-辞書はいつでも追加キーでの動的な構造であり、
添加の順序の値を、唯一のキーと値の関係に関心- Pythonはキー気にしません

alien_0 = {'color': 'green', 'points': 5}
print(alien_0['points']) # 输出5

alien_0['x_position'] = 0
alien_0['y_position'] = 25
print(alien_0) # 输出 {'color': 'green', 'points': 5, 'x_position': 0, 'y_position': 25}

6.2 Deleteキー - 値のペアデル

デルを使用するときは、辞書の名前を指定する必要があり、あなたは、キーを削除したいです

alien_0 = {'color': 'green', 'points': 5}
del alien_0['points']
print(alien_0)  # 输出 {'color': 'green'}

同様の目的の6.3辞書

# 由类似对象组成的字典
favorite_languages = {
    'jeny': 'Python',
    'sarah': 'c',
    'wilson': 'c++'
}
# 较长的print语句可分成多行
print("Wilson's favorite language is " +
      favorite_languages['wilson'].title()
      + ".")
# 输出 Wilson's favorite language is C++.

6.4(辞書のアイテムを横断)

Pythonの辞書トラバーサル各キー - 値のペア、およびキーは、変数名の中に存在する、可変言語の存在下での値

値のペアのリスト - 項目は、()のキーを返します。

# 遍历字典
favorite_languages = {
    'kevin': 'java',
    'jeny': 'python',
    'sarah': 'c',
    'wilson': 'c++',
}

for name, language in favorite_languages.items():
    print(name.title() + "'s favorite language is " 
    + language.title() + ".")

6.4.1トラバース辞書すべてのキーのキー()またはデフォルト

キー上デフォルトループ次のように、辞書を横断しつつfor name in favorite_languages.keys():for name in favorite_languages:効果が同じです

favorite_languages = {
    'kevin': 'Java',
    'jeny': 'Python',
    'sarah': 'c',
    'wilson': 'c++',
}

for name in favorite_languages.keys():
    print(name.title())

メソッドキーは()dict_keys([])のリストを返します

print(favorite_languages.keys())  
# 输出 dict_keys(['kevin', 'jeny', 'sarah', 'wilson'])

ソートされた辞書内のすべてのキーを介し6.4.2順次()

ソートのための方法()

favorite_languages = {
   'kevin': 'Java',
   'jeny': 'Python',
   'sarah': 'c',
   'wilson': 'c++',
}

for name in sorted(favorite_languages.keys()):
   print(name.title()) 

輸出

Jeny
Kevin
Sarah
Wilson

すべての値値6.4.3トラバース辞書()

favorite_languages = {
    'kevin': 'java',
    'jeny': 'python',
    'sarah': 'c',
    'wilson': 'c',
}

for language in favorite_languages.values(): # value可能重复
    print(language.title())

print("\nUsing set to remove duplicate values")
# 用set去重
for language in set(favorite_languages.values()): 
    print(language.title())

使用6.5集合{}

同様の辞書とのセットは、セットキーが設定されますが、値は保存されません。キーを繰り返すことはできませんので、そのので、セットで、無重複キー。

いいえ繰り返しは、要素の順序なしコレクションを設定されていません

セットを作成するには、入力のセットとしてリストを提供する必要があります。

追加(設定)および削除()メソッド欠失素子

# set用法
arr = [1, 2, 2, 3, 3]
print(set(arr))  # 输出 {1, 2, 3}
b = set([1, 2, 2])
print(b)  # 输出 {1, 2}

b.add(7)
print(b)  # 输出 {1, 2, 7}
b.remove(7)
print(b)  # 输出 {1, 2}

セットリストメソッドに

b = set([1, 2, 2])
print(b)  # 输出 {1, 2}
tt = list(b)
print(tt)  # 输出 [1, 2]

6.6ネスト

時には我々はリストに保存されている辞書のシリーズ、または辞書に格納された値として、リストを必要とする、これらのネストになってきました

辞書は、alien_0エイリアンとして様々な情報を含んでいるが、同時に情報が格納されている外国人ではありません。この時点では、外国人のリストを作成することができます

# 创建一个用于存储外星人的空列表
aliens = []

# 创建30个绿色的外星人
for alien_number in range(30):
    new_alien = {'color': 'green', 'points': 5, 'speed': 'slow'}
    aliens.append(new_alien)

for alien in aliens[0:3]:
    if (alien['color'] == 'green'):
        alien['color'] = 'red'
        alien['points'] = 15
        alien['speed'] = 'fast'

for alien in aliens[0:5]:
    print(alien)

print("...")

輸出

{'color': 'red', 'points': 15, 'speed': 'fast'}
{'color': 'red', 'points': 15, 'speed': 'fast'}
{'color': 'red', 'points': 15, 'speed': 'fast'}
{'color': 'green', 'points': 5, 'speed': 'slow'}
{'color': 'green', 'points': 5, 'speed': 'slow'}
...

私たちはしばしば、このようなサイトをやって、あなたは各ユーザーの辞書を作成する必要がある場合などの辞書が多数、含まれており、これらを指定ユーザーの辞書に格納されているリストの一覧を表示する必要があります


第VII章ユーザー入力およびwhileループ

7.1入力()関数は、文字列の入力を取得します

関数入力()いくつかのテキストを入力するユーザーを待って、プログラムの一時停止をしましょう。ユーザー入力を取得した後、Pythonはあなたの使用を容易にするために、変数に格納します

ディスプレイにユーザー順に:入力()関数は、1つのパラメータを取りプロンプトまたは命令
(構築されたラインの印刷に対応する)が、折り返されません。

prompt = "If you tell us who you are, we can personalize the messages you see."
prompt += "\nWhat is your first name? "

name = input(prompt)
print("\nHello, " + name.title() + "!")

輸出

If you tell us who you are, we can personalize the messages you see.
What is your first name? wilson79

Hello, Wilson79!

注:あなたがPython2.7を使用している場合は、入力を取得する()入力ではなく)(raw_input使用してください

数値に7.2関数int()文字列

入力()関数は、ユーザ入力として解釈される文字列
に関数int()数値文字列

age = input("How old are you? ")
age = int(age) # '22' to 22

ファンクションフロート()に文字列浮動小数点数

time = '2.3'
time = float(time)

7.3 whileループ

あなたが毎日の可能性が高い、このようなゲームは、プレイヤーが連続した時間で動作して再生したいことを確認するために、whileループを使用して、プレイヤーが終了したいとき停止が実行されているようにwhileループを含むことがある使用するプログラム、ターミナルプレスコントロール+ C終了実行

例:ユーザーが終了したときに選択できます

# while循环
prompt = "\nTell me something, and I will repeat it back to you:"
prompt += "\nEnter 'quit' to end the program. "

message = ""
while message != 'quit':
    message = input(prompt)
    if (message != 'quit'):
        print(message)

7.3.1ロゴを使用

プレイヤーは船を持っていないか、または都市が破壊された保護するために、ゲームでは、様々なイベントは、ゲームの終わりにつながる可能性があります。
プログラムでは条件の多くは、実行に進む前に、あなたがプログラム全体がアクティブであるかどうかを決定するための変数を定義することができます満たされている必要があり。この変数はなっシンボル
TrueまたはFalse状態の変化を表すために使用されます

7.3.2ブレークは引き続き和

使用法は、C ++に似ていると

ループを作るか、または壊すための場所では、少なくとも1つのそのようなプログラムがあることを確認しながら、ループ条件はFalseです

サイクルが死んでいる場合は崇高なテキストout.txtをへの出力の内容は、それが現在のTXTは非常に大きくなります原因となります場合は、速やかにプログラムを終了さそうに、大量のメモリを占有

7.3.3ユーザー入力満たされた辞書

アンケートを作成し、回答者の答えの名前を入力するように要求し、前記各実行サイクル

# 使用用户输入来填充字典
responses = {}

# 设置一个标志,判断调查是否继续
polling_active = True

while polling_active:
    name = input("\nWhat is your name? ")
    response = input("Which mountain would you like to climb someday? ")

    # 将答案存到字典中
    responses[name] = response

    # 看看是否还有人要接受调查
    repeat = input("Would you like to let another person respond? (yes / no) ")
    if (repeat == 'no'):
        break

print("\n--- Poll Results ---")
for name, response in responses.items():
    print(name.title() + " would like to climb " + response.title() + ".")

輸出


What is your name? Eric
Which mountain would you like to climb someday? Denali
Would you like to let another person respond? (yes / no) yes

What is your name? Lynn
Which mountain would you like to climb someday? evil's thumbd
Would you like to let another person respond? (yes / no) no

--- Poll Results ---
Eric would like to climb Denali.
Lynn would like to climb Evil'S Thumbd.


最後に書かれたブログは思考の知識をまとめたコンピュータサイエンスの分野を中心に、レビューは、私の目標を理解することは容易である各ブログを書くために、:技術と知識を共有することは喜びである、と私はみんなを歓迎します一緒に学習の交換をして、そこにコメントエリアには疑問もありませんが、またあなた(^∀^●)との深い交流を楽しみにすることができます

公開された232元の記事 ウォン称賛80 ビュー90000 +

おすすめ

転載: blog.csdn.net/qq_43827595/article/details/104293771