各初心者プログラマはPythonのスキルを知っている必要があります

瞬間、これまで以上にPythonは、より人気があり、人々は実際には毎日あり、どのように強力なPythonが使いやすいです。

私は数年前からPythonでプログラミングされているが、最後の半年は、フルタイムです。これらのことは、あなたがクリアしたいときに私は、Pythonの使用を開始することを、以下に挙げます:

  • 文字列操作
  • リスト内包
  • ラムダ関数と地図
  • そうでない場合は、1本のライン上のelifや利用条件判定
  • ジップ()関数

文字列操作

 

 

Pythonは文字列を操作するために同様の算術演算子+と*を使用してのが得意です

>>> my_string = "Hi Medium..!"
>>> print(my_string * 2)
Hi Medium..!Hi Medium..!
>>> print(my_string + " I love Python" * 2)
Hi Medium..! I love Python I love Python
复制代码

我々はまた、ちょうど[:: --1]することができ使用し、文字列の操作を否定することは非常に便利なことができ、また、この操作文字列操作に限定されるものではありません。

>>> print(my_string[::-1])
!..muideM iH
>>> my_list = [1,2,3,4,5]
>>> print(my_list[::-1])
[5, 4, 3, 2, 1]
复制代码

だから、リストのためにそれの複数の文字列が含まれている、私たちも、ヨーダ、翻訳を行うことができます!

>>> word_list = ["awesome", "is", "this"]
>>> print(' '.join(word_list[::-1]) + '!')
this is awesome!
复制代码

上記のコードでは、我々は、最大ステッチの要素のリストを逆にするスペースで、.join()メソッドを使用し、感嘆符を追加しました。

リスト内包

 

ああ、私の神!私がいることを知ったら、私の全世界が(それが実際に起こっていないかもしれませんが、それは接戦だった)に変更しました。これは、業務の迅速リストへの中国の、強力な直感的で読みやすい方法です。

我々は5Python学習交換基を追加正方形の数を取るような機能を持っている場合

>>> def stupid_func(x):219539519欢迎加入
>>>     return x**2 + 5
复制代码

今、私たちは、リストの内包表記を理解していない場合は、それらのすべての奇数のリストに機能をしたい、そうだとすればあなたが書くかもしれません

>>> my_list = [1, 2, 3, 4, 5]
>>> new_list = []
>>> for x in my_list:
>>>     if x % 2 != 0:
>>>         new_list.append(stupid_func(x))
>>> print(new_list)
[6, 14, 30]
复制代码

しかし、我々は、より簡単な方法を持っています!

>>> my_list = [1, 2, 3, 4, 5]
>>> print([stupid_func(x) for x in my_list if x % 2 != 0])
[6, 14, 30]
复制代码

リスト導出は[リスト内の項目についての発現]条件に適用され、あなたが上記のようないくつかのブール条件は、条件の奇数の取得に適用する場合:[リスト内の項目についての発現条件の場合]を、それと以下の文言が一致しています

>>> for item in list:
>>>     if conditional:
>>>         expression
复制代码

クールが、私たちはより良い行うことができ、我々は機能を必要としないため、「stupid_func」

>>> print([x ** 2 + 5 for x in my_list if x % 2 != 0])
[6, 14, 30]
复制代码

ラムダと地図

 

 

ラムダ

少し奇妙ラムダが、私は限り、あなたはそれで行くように導入された他の要素が好き、あなたはどれだけ強力で直感的なそうでしょう。

ラムダは、実際には、小さな無名関数です。それはなぜ匿名?小さなラムダは、多くの場合、簡単な操作を実行するために使用されるためです、そしてこれらの操作は、多くの場合、正式に定義するデフは、my_function()関数を使用する必要があります

私たちは、例えば、まだ正方形の数上記の例であり、5を追加します。上記のコードでは、関数デフstupid_func(x)は、今のは、ラムダを再作成するためにそれを使用してみましょうを定義します

>>> stupid_func = (lambda x : x ** 2 + 5)
>>> print([stupid_func(1), stupid_func(3), stupid_func(5)])
[6, 14, 30]
复制代码

なぜそのような奇妙な構文を使用できますか?実際には、このようなアプローチの有用性がで反映され、私たちはあなたには、いくつかの簡単な操作を実現することができ、実際の関数を定義していません。私たちは以下のリストをソートしたい場合は、我々は、例えば、番号のリストであり続け、1つのアプローチが使用するソート()

>>> my_list = [2, 1, 0, -1, -2]
>>> print(sorted(my_list))
[-2, -1, 0, 1, 2]
复制代码

これは機能しますが、私たちはソートする要素数の二乗の大きさをフォローしたい場合は、ラムダを使用することは非常に便利です。ラムダソート()関数を使用して定義することができるキーソートするために使用されます

>>> print(sorted(my_list, key = lambda x : x ** 2))
[0, -1, 1, -2, 2]
复制代码

地図

地図は、そのようなリストとして、配列の各要素に適用される関数に使用されます。私たちは、製品の構成要素の対応する位置をリストするには、2つのリストがあると、それを行う方法を、あなたはラムダと地図を使用することができます

>>> print(list(map(lambda x, y : x * y, [1, 2, 3], [4, 5, 6])))
[4, 10, 18]
复制代码

ラムダ地図の組み合わせと比較して、次のコードとは、あまりにもエレガントなAであります

>>> x, y = [1, 2, 3], [4, 5, 6]
>>> z = []
>>> for i in range(len(x)):
>>>     z.append(x[i] * y[i])
>>> print(z)
[4, 10, 18]
复制代码

そうでない場合は、1本のライン上のelifや利用条件判定

 

時には、あなたは以下のコードを書くかもしれません

>>> x = int(input())
>>> if x >= 10:
>>>     print("Horse")
>>> elif 1 < x < 10:
>>>     print("Duck")
>>> else:
>>>     print("Baguette")
复制代码

このコマンドを実行すると、システムは、我々は5に入ると仮定すると、入力内容の入力からあなた()関数を促すメッセージが表示されます、我々はダックを取得します。しかし、我々はまた、次のように書くことができます

print("Horse" if x >= 10 else "Duck" if 1 < x < 10 else "Baguette")
复制代码

それはかなり簡単です!あなたの古いコードを読んで行く、あなたはあまりにも多くの場所が他にあれば、この単一ライン裁判官に裁判官を置き換えるために、この単純なことができがあることがわかります。

郵便番号()

 

 

地図機能部を覚えて、我々はzipファイルを(使用して、まあ、並列処理の2つの例をリストアップ)容易になります

我々は二つのリスト、名前を含むもの、含まれている最後の名前を持っている場合、それはどのようにzipファイルを()を使用して、それらをマージ良いことができます!

>>> first_names = ["Peter", "Christian", "Klaus"]
>>> last_names = ["Jensen", "Smith", "Nistrup"]
>>> print([' '.join(x) for x in zip(first_names, last_names)])
['Peter Jensen', 'Christian Smith', 'Klaus Nistrup']
复制代码

すごいああ、次のようにそれを調整することができ、私の名前はピーター・イェンセンはありませんが、間違ってあります

>>> print([' '.join(x) for x in zip(first_names, last_names[::-1])])
['Peter Nistrup', 'Christian Smith', 'Klaus Jensen']

复制代码

結論

私はここに簡単なチェックリストの要約だけです、目的はあなたが多くのことを行うことができますエレガントなPythonのを理解することができるようにすることです。あなたが任意のさまざまなアイデアを持っている場合は、メッセージああすることができます!

おすすめ

転載: www.cnblogs.com/Pythonjiaochen/p/11640496.html