モジュール1はじめに
標準ライブラリやサードパーティのモジュール
(1)標準ライブラリ
#!は/ usr / binに/ ENVパイソン
# - * - コーディング:UTF-8 - * -
輸入SYS
プリント(のsys.path)
「」」
'/ユーザ/ /ドキュメント/ Python_study / S14 / 2日目の開発'
'/ユーザーが/ /ドキュメント/ Python_study / S14を開発します'
「/Library/Frameworks/Python.framework/Versions/3.7/lib/python37.zip」
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7' 、
「/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload」
「/Users/develop/Documents/Python_study/s14/venv/lib/python3.7/site-packages」
「/Users/develop/Documents/Python_study/s14/venv/lib/python3.7/site-packages/setuptools-40.8.0-py3.7.egg」
'/Users/develop/Documents/Python_study/s14/venv/lib/python3.7/site-packages/pip-19.0.3-py3.7.egg']
「」」
Pythonの標準ライブラリは、典型的には存在するREモジュールが正規表現であり、例えば/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7のsocket.pyネットワーク
印刷(sys.argvの[2])を入力し、ファイル名は、端末123を出力することができる2のpython3 $を開発するの.py
「「」
入力モジュールの.py 1 2 3
2を印刷します
zzhdeMacBook-プロ:2日目は$のpython3モジュールを開発するの.py 1 2 3
[ '/ユーザ/開発/ドキュメント/ Python_study / S14 / 2日目'、 '/Library/Frameworks/Python.framework/Versions/3.7/lib/python37.zip'、
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7'、 '/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload'、
'/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages']
2
「「」
OSの .mkdir(「新しい」)は、現在のディレクトリに新しいフォルダを作成します。
(2)サードパーティモジュール
「「」
#参照サードパーティは、カレントディレクトリで起動するかを選択します
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7第1位は、独自のモジュールを作成するために行きます
#2。は、パスを追加します
「「」
例:現在のディレクトリでは、ファイルの作成に入れてコピーguess_age.py /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7を
輸入guess_age.py#が直接読み込むプログラム内guess_age.py
「「」
guess_age:50
大きめだと思います!
guess_age:80
小さい方だと思います...
guess_age:60
小さい方だと思います...
あなたは何回も試してみました...オフファック
「「」
二つのpyc
Pythonはインタプリタ言語ですが、結果PYCはそれをやっている、cがああ略語の魚を遵守しなければなりません
コンピュータは、コンピュータ言語認識に翻訳するために、高レベルの言語を介して実行する時間です、ハイレベル言語を認識することはできません
Jave同様のpythonの運転中にコンパイル最初の後に説明しました。Java仮想マシンとのpythonは、言語に基づいています
PYCファイルには、結果をコンパイルする本当のコンパイラです
次のようにプロセスは以下のとおりです。
PythonはメモリPyCodeObjectに格納される結果をコンパイルし、実行時間、時にPythonの実行の終了、pyhton
コンパイラはPyCodeObjectのpycに書き戻されます。
直接ロード見つかった場合は、2番目の実行Pythonプログラム、PYCファイルを探して、あなたのハードディスクにプログラムが、そうでない場合は上記のプロセスを繰り返したとき(最初の時間は、繰り返しを見つけられませんでした)
PYCがすでに存在する場合、実行する方法を、ソースコードを変更します。再コンパイルのpycかどうかを判断するために時々更新
例えば、輸入guess_age後になります/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7'/__pycache__ guess_age.cpython-37.pycを生成
3つの文字列
=名前「私の名前はジェリーIS」
印刷(「-----文法----」)
を印刷(「活用()」)
印刷(name.capitalize())#は、最初の文字を大文字、他の変更が発生します小文字:マイジェリーは、名前のある
印刷( "COUNT")
を印刷(name.count( "E"))が表示され#E数の
印刷( "センター")
#印刷() "*"、name.center(50)50文字の合計を印刷名前は、充填の両側中央部を置くのに十分ではありません*:***************** *****************私の名前はジェリーのある
印刷( "endsWith")
を印刷(name.endswith( "rryが"))#がrryがTrueを返す終了するか否かを判断する
印刷( "expandtabsを()")
NAME1は= "私の\ TNAMEはジェリーIS"
を印刷(name1.expandtabs(TabSize = 10 ))#文字列は、時間タブ、タブに変換するスペースの数を持っています。結果:私の名前はジェリーIS
印刷(「検索」)
を印刷(name.find(「IS」))#は添字8返し
印刷(名[名前を。同様のリストを持つ10])#をスライスすることができます(「ある」)を見つけます。
結果:IS 印刷( "fomat")
= NAME2は、 "私の名前は{名前}と{年齢}はI AM IS"
を印刷(name2.format(名前= "ジェリー"、= 25)年齢)
を印刷(name2.format_map({ "名": "ジェリー"、「年齢":25}))#辞書の形式
プリント("インデックス")
プリント(" isalnum ")#は、アラビア数字(英語文字プラス0-9)ではありません
はisalpha")#か平易な英語の文字の印刷( "
印刷(" isdigit整数「)か
、印刷(」isIdentifierと法的変数名ではない「)
、印刷(」islowerは小文字ではない「)
、印刷(」ISNUMERICデジタルか「)、
印刷(」33.3」.isnumeric())#のみデジタル
プリント( 「33.3」.isdigit())#共通
プリント(「isspacesは宇宙である」)
を印刷(「資本で開始するかどうかをistitle」)
を印刷(「すべて大文字かどうかisupper」)
を印刷(「参加」)
NAME4 =「私の名前"ジェリーです
プリント(name4.join([ "1"、 "2"、 "3"、 "4"]))
プリント( "+"。ジョイン([ "1"、 "2"、 "3"]))
プリント( "として、ljust")
プリント(name4.ljust(50、「* 」))# 総出力は*逆バックRJUSTに、次いで、50未満の文字ではない
大文字小文字に印刷( 『下』)#
#は小文字になる( 『上部』)印刷大文字
プリント(「lstrip」)空間の両側#ストリップが除去される/ラップlstripのrstripを除去することであるが、左の右側に除去される
プリント(「最後に、同じ対応する対応する文字交換maketrans」)
P = str.maketrans(「jergg」 、 "12345")
を印刷( "jergy" .translate(P))
を印刷() "全ては、代替的に別の送信のデフォルト数を置き換えてもよい置換"
プリント( "Jerrry" .replace( "R&LT"、 "R&LT"、2))
印刷(「RFINDは、インデックスの最後の額面を見つけるために左」)
を印刷(「ジェリー」.rfind(「R」))
印刷(「スプリットは何傍受によると、デフォルトは空白です」)
を印刷(.split「ジェリーがあります」 ())
プリント( "+。1. 4. 3 + 2 +" .split( "+"))
プリント( "改行によって撮影された分割線")
を印刷( "2 + 1 \ N- + +。4. 3 ".splitlines())
を印刷("何のstartsWith押してスタート")
を印刷(" swapcase反転ケース")
を印刷("ジェリー".swapcase())
を印刷("各タイトル最初の文字大文字の文字の変更「)
印刷(.TITLE() "私の名前はある")
、印刷( "zfill")
プリント( "ジェリー" .zfill(50))