Pythonの基本的な知識
1.リスト
注意点:
1。リスト内の要素はさまざまなタイプにすることができます
2.リスト内の要素はさまざまなリストにすることができます
3.リストリスト内のリストを読み取ります[3] [1]
4.indexはリストのインデックスを返します.index値
5.リストオブジェクトの要素を変更できます
6.list.insert(index、Value)特定のインデックス位置に挿入します
7.del list [index]
リストで指定されたインデックス値を削除します8.リストの包含a = "PY" n = [1,2,3,4]
print([(x、y)for x in a for y in n])
9。リスト操作シンボル
+組み合わせリスト*繰り返しリスト
10.リスト関数len( )/ max()/ min()
11.list()メタアセンブリをリストに
置き換えます
12.sum関数13.print(dir [])すべてのメソッドを表示します
14.extend()リストと「+」関数を組み合わせます
15.pop(index)と同様にインデックス値と対応するインデックスを
削除します16.remove(Vale)リスト内の値を削除します
2.タプル
1.タプルには要素が1つしかないため、要素の後に追加する必要があります
2.タプル
のオブジェクトは変更できません3.タプルのオブジェクトにインデックスを付けることができます
4. +記号の組み合わせタプル
5.要素を削除できませんdel ()タプル全体を削除します。6
。一般関数len()max()min()sum()
7。list()/ tuple()関数は、リストとタプルを相互に置き換えます。
3.辞書
1.dic = {'name': 'Jack'、 'Sex': 'Male'、 'ID':1212}
2。キー値で値を返します
3.同じキー値に対して2回表示することはできません。同じキーが割り当て2回で、後者は上書きされます
4.辞書の要素は変更できます
5. print(dir({}))すべての辞書を表示するメソッド
6.get(K [d])Kがありますdic.get( "name")
7.Items()dict.items()は、辞書を出力可能なリストに変換します
8.keys()はすべてのキー値を返し、リストを生成します
9.valus()はすべてを返します値とリストを生成します
10.Setdefault(k、d)辞書要素がある場合は追加します
11.popitem()辞書の最初の要素を削除します
12.update({'Street': " Xingdou Garden Room 701 "})辞書に追加
4.エスケープ文字
5.弦
1.captitalizeは文字の最初の単語を大文字にし、その後はすべて小文字にします
2.大文字はすべての文字を大文字にします
3.すべての小文字を小文字にし
ます
4.titleは文字のすべての単語の最初の文字を大文字にします5.swapcaseは文字列内のすべての単語を変更しますto small Big、big、small
6.Isalnum()文字と数字の文字列
7.Isapha()文字と中国語の文字
列
8.isdigit()数字のみの文字列9.count()の長さを計算するstring
10.find()文字のインデックス値を検索します
11.index()はfind()関数と一致し、見つからない
場合はエラーが報告されます12.join()単一要素の累積
13.replace( )print str.replace(old、new、3);ここで、3は3つ以下の置換を意味します
14 max()、min()は対応するASIIコードを返します
コーディングスタイルの紹介:
クラス名:キャメルケースと頭字語:HTTPWriterはHttpWriterよりも優れています。
変数名:lower_with_underscores。
メソッド名と関数名:lower_with_underscores。
モジュール名:lower_with_underscores.py。(ただし、アンダースコアのない名前の方が適しています!)
定数名:UPPER_WITH_UNDERSCORES。
プリコンパイルされた正規表現:name_re。
詳細については、https://www.cnblogs.com/zhizhan/p/5546539.htmlをご覧ください。
文字列のフォーマット
Six。オペレーター
列子:
a = 60#60 = 0011 1100
b = 13#13 = 0000 1101
c = 0
c = a&b;#12 = 0000 1100
print "1-cの値は次のとおりです:"、c
c = a | b;#61 = 0011 1101
print "2-cの値は次のとおりです:"、c
c = a ^ b;#49 = 0011 0001
print“ 3-cの値は:”、c
c = 〜a;#-61 = 1100 0011
print "4-cの値は次のとおりです:"、c
c = a << 2;#240 = 1111 0000
print "5-cの値は:"、c
c = a >> 2; #15 = 0000 1111
7.条件付き判断
- もし…そうでなければ…
- if…elif…elif…
- 三項式
8.ループ
1.while 2.for
3.break
break out of the loop
4.continue break out of
a single loop 5.passemptyステートメント
ナイン機能
1.パラメータの送信:
1)必須パラメーター
2)キーワードパラメーター
3)デフォルトパラメーター:関数が呼び出されたときに、デフォルトパラメーターの値が渡されない場合、それはデフォルト値と見なされます。次の例では、年齢が渡されない場合、デフォルトの年齢を出力します
。4)可変長パラメーター:最初に宣言されたよりも多くのパラメーターを処理できる関数が必要になる場合があります。これらのパラメータは、パラメータの二種類以上の異なる不定長パラメータと呼ばれるこれらの名前されていない。
で宣言、等:
**** DEF試験(*引数):#*引数:タプルの要素、引数:データを格納するタプル変数名
print(* args)
def fun(args):#args:辞書内の要素(キーのみ)、args:データを格納する辞書の変数名
print(args)
fun(username = "Zhang San"、age = 18)#{'username': 'Zhang San'、 'age':18}
5)関数内のグローバル変数の値を変更する場合は、キーワードglobalを使用して宣言する必要があります
2.ラムダ式
3.閉鎖思想
def sayHI():
print( "Hello")
def SayHIs(sayHI):
sayHI()
print( "Hello again")
クロージャアイデアデコレータの
拡張#デコレータ
インポートロギングの使用
1.最初の要件は、関数をパラメータとして関数に渡して、クロージャ
defを形成することです。Use_log(fuc):
logging.warn( "%s isrunning " 。%のFuc名)
のFuc()
DEFバー():
プリント( '私はバー午前')
USE_LOG(バー)
#2装饰器的延伸思想。
デフUSE_LOG(のFuc):
デフ整経機(* argsを、** kwargsから):
(。%のFuc "%sがruningてさ" logging.warn名)
リターンのFuc(*引数を、** kwargsから)
リターンワーパー
def bar1():
print( 'i am a bar11')
bar = Use_log(bar1)
bar()
#3の進化のバージョン。
USE_LOG(のFuc)DEFデコレータ:
DEF整経機(* argsを、** kwargsから):
logging.warn(%のfucをを"%sがruningてさ"。名前)
リターンのFuc(* argsを、** kwargsから)
リターンワーパー
@Use_log
def bar1():
print( 'i am a bar222')
bar1()
4.パラメータを使用したデコレータの使用
デフUSE_LOG(リーベン):
デフデコレータ(FUNC):
(* argsを、** kwargsから)デフwapper:
==「メイン」リーベン場合:
logging.warn(。%のFUNC "%sがruningてさ"名)
リターンfuncを(*引数、** kwargsから)
リターンwapperの
リターンデコレータ
@Use_log(リーベン= 'メイン')
DEF BAR1():
プリント( '私はBAR11午前')
BAR1()
#5。クラスデコレータの使用法クラスデコレータには、柔軟性、高い凝集度、カプセル化などの利点があります。
クラスFOO(オブジェクト):
def init(self、func):
self.func = func
def call(self、* args、* * kwargs):
print( "レコードの前の位置")
self.func()
print( '呼び出し後の位置')
@FOO
def bar1():
print( 'i am a bar11')
bar1()
#functools wrapsは、元の関数のメタ情報をデコレータ関数にコピーできます。これにより、デコレータ関数は、
functoolsの元の関数と同じメタ情報を持つようになり
ます
。importwrapsdeflogged(func):@ wraps(func)
def with_logging(*引数、** kwargsから):
プリントは、(。.format(FUNC "{}と呼ばれた"名))
戻りFUNC(引数、** kwargsから)
リターンwith_logging
@logged
DEF F(X):
リターンX + X X
5.高階関数
1.lambda 2.reduceの
functoolsからのreduceバイナリ操作関数
3.2つのパラメーターをマップします。1つは関数で、もう1つは数値の
シーケンスです。4。filterはシーケンスをフィルター処理し、1つは関数で、もう1つはのシーケンスです。数値
#高次関数
def add(x、y、f):
return f(x)+ f(y)
print(add(-5,6、abs))#無名
関数ラムダ式lambda [arg1]
sum = lambda x、y:x + y
print(sum(10,20))
def MAX(a、g):
max = a [0]
for i in range(len(a)):
if g:
max = a [i]
return max
a = [1,2,3、6,6,43,20,99]
print(MAX(a、lambda x、y:x> y))
#reduceは、functoolsのバイナリ操作関数
ですimport reduce
l = [1,2,3,4,5]
l1 = [7,8,9]
print(reduce(lambda x、y:x + y、l))
print(reduce(lambda x、y:x + y、l 、20))
#map関数は2つのパラメーターを受け入れます。1つは関数でもう1つはシーケンスです。マップは渡された関数をシーケンスの各要素に順番に適用し、結果を新しいリストとしてmap(func、seq1 [、sq2…])
print(list(map(lambda x:x + 1、l)))
try:
print(list(map(lambda x、y:x + y、l、l1)))#2つを組み合わせる以下
を除く配列:
print( "エラーがあります")
シーケンスをフィルタリングする#filter関数
print(list(filter(lambda x:x> 3、l)))#reduce mapフィルターの巧みな使用
5.デコレータ
6.記述子(脳の理解が多すぎる)クラスの動作を制御する
#Python関数型プログラミング1.3
つの主要な機能:不変データ関数は変数のような末尾再帰の最適化を使用します:stacは再帰ごとに再利用されます
2.モードの利点:並行性、遅延評価、決定論
3.関数型プログラミングテクノロジー:ラムダマップフィルターはパイプラインの再帰的な再帰的なカレーを減らします高次関数
4.関数型プログラミングロジック:このようなコードは、実行方法ではなく、実行内容を記述しています。
6.Pythonデータ型
- int(x [、base])Xを整数に変換します
- long(x [、base])Xを長整数に変換します
- float(x)Xを浮動小数点数に変換します
- complex(real [、imag])は複素数を作成します
- str(x)Xを文字列に変換
- repr(x)は、オブジェクトXを式文字列に変換します
- eval(str)は、文字列内の有効なPython式を計算し、オブジェクトを返すために使用されます
- タプルはシーケンスSをタプルに変換します
- list(s)シーケンスをリストに変換します
- セットは変数セットに変換されます
- dict(d)は辞書を作成します
- 凍結セットは不変のセットに変換されます
- chr(x)整数を文字に変換し、対応する文字のASCIIコードを返します
- unichr(x)は整数をUnicode文字に変換します
- ord(x)は、文字をその整数値に変換し、対応する文字のASCIIコードを返します
- hex(x)は整数を16進文字列に変換します
- oct(x)は整数を8進文字列に変換します
10.クラス
1.カプセル化
2.継承
3.ポリモーフィズム
。
オブジェクト指向オブジェクトの概要。オブジェクトはクラスのインスタンス化です。
オブジェクトの特性:静的特性/動的特性。
静的特性:オブジェクトの外観、プロパティ、属性など。
動的特性:機能、動作
11.プログラムのデバッグ
1.
アサート関数の概要アサート関数の概要
プログラムのデバッグ
12.ファイルの読み取りと書き込み
13.データを保存する
14.組み込みの例外
1.sysモジュールSYSモジュール
15.例外の処理
16.モジュール/ライブラリ
Pythonモジュールの概要(一般的なサードパーティライブラリ)