ホームページ >バックエンド開発 >Python チュートリアル >Pythonの知識まとめ
Pythonの知識まとめ
1. Pythonの概要
1. Pythonの概要
Pythonは、初心者向けのインタラクティブなオブジェクト指向言語です。
2. Pythonの特徴
①学びやすい
②読みやすい
③メンテナンスが簡単
④豊富な標準ライブラリ
⑤インタラクティブモード
⑥ポータブル
⑦拡張性
⑧データベース
⑨GUIプログラミング
⑩スケーラビリティ
3 Python はタブ補完機能をサポートしています:
>>> import readline,rlcompleter
>>> 上記の 2 つの文を py ファイルに書き込むことができます。そしてそれを直接インポートします
ipython がコマンド履歴を保存したい場合は、sqlite-devel をインストールする必要があります
4、Python のインストール
#tar -jxvf Python-3.4.3.tar.bz2
#cd Python3.4.3
#./configure [--PRefix=/usr/local/python3]
#make && make install
注: ①Python はシステム依存パッケージであり、更新のみが可能で、削除はできません。yum のバージョンは一致する必要があります。 Python をアップグレードした後は、下位バージョンの yum を指定する必要があります。対応する操作は次のとおりです。
#mv /usr/bin/python /usr/bin/python-2.6.bak バックアップ
#ln -s /usr/local/bin/python3.4 /usr/bin/pythonソフト接続を作成します
#python –V バージョンスキャンを実行します
②yum設定ファイルを変更して正しく動作するようにします
#vim /usr/bin/yum
/usr/bin/pythonを/usr/bin/に変更しますpython2 .6
③ 上記の設定を完了してもエラーが発生する場合は、環境変数を変更することを忘れないでください
#vim /etc/profile
5. Python実行スクリプト
#python
。5.2. 注意事項:
①python3.0以降ではprintは関数になります。したがって、実行には print() 形式を使用する必要があり、以前のバージョンでは括弧を使用していませんでした
>>> print('hello man')
② Python を対話モードで使用する場合は、次の点に注意してください。スクリプトには Python コマンドのみを入力できます。 print ステートメントは必須であり、式の効果は、完成した print ステートメントを入力する必要はありません
>>> *10)
③対話モードでは実行する必要がある ステートメントと一致させるには、ステートメントが実行されていないことを意味する「:」を追加する必要があります。また、一致するステートメントの終わりを表すには空行を使用する必要があります
>>> for i in range(4):
... print(i)
...
0
1
2
3
4
④ インデントが均一であることを確認してください。そうでないとエラーが発生します
5.3、Pythonスクリプトの実行
①bash bangの紹介
#!/usr/bin/python
#!/usr/bin/env python (Python バージョンでは実行できない問題が発生しやすいため、この形式を使用することをお勧めします)
2. Python プログラミング
1. 変数の定義
1.1. 変数の命名規則
①変数名は文字とアンダースコア(_)で始まる変数名のみ使用可能
②変数名は文字、数字、アンダースコアで構成可能
③変数名は大文字と小文字が区別されます
LAMP は同じ変数名ではありません
1.2. 変数の代入
①代入操作
変数名 = 変数値
②変数に文字列を代入する必要があります。そうしないとエラーが報告されます
>>> name = wdd
トレースバック (最後の呼び出し):
ファイル "< ;stdin>"、
NameError: 名前 'wdd' が定義されていません
③増分割り当て
> x = 1
> x = x+1
>> y
2
>> ;> =1,2,3
>>>①整数型
>>②浮動小数点型
> GT ; 3.14*3
9.42
2.2. 型
>>> name = 'wdd'
> gt;> ; print(name)
wdd
> ;>> string でサポートされているメソッドのヘルプを表示します
['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__'、'__hash__'、'__init__'、'__le__'、'__len__'、'__lt__'、'__mod__'、'__mul__'、'__ne__'、'__new__'、'__reduce__'、'__reduce_ex__'、'__repr__ '、'__rmod__'、'__rmul__'、'__setattr__'、'__sizeof__'、'__str__'、'__subclasshook__'、'_formatter_field_name_split'、'_formatter_parser'、'capitalize'、'center'、'count'、'decode'、 'encode'、'endswith'、'expandtabs'、'find'、'format'、'index'、'isalnum'、'isalpha'、'isdigit'、'is lower'、'isspace'、'istitle'、'isupper '、'join'、'ljust'、' lower'、'lstrip'、'partition'、'replace'、'rfind'、'rindex'、'rjust'、'rpartition'、'rsplit'、'rstrip'、 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
>>> name.replace('wdd','shuaige') #ハンドルwdd代替换ならshuaige
'shuaige'
>>> name.replace('w','cool') 取っ替え换をcool
'cooldd'
>>> help(name.replace) #查看具体的方法帮助
②文字符串中单双引号
在字符串中单双引号一致,用包含字符串
>>> persion = '名前','身長'
>>>人物
('名前', '身長')
>>> info="私は良い男です" #在双引号中嵌套单引号,不用转义符
>>> info
「私は良い人です」
>>> print(info)
私は良い人です
③在字串中调用特殊字符
如果使用转义符、将用特殊字符失去含义,系统中特殊的转义字符如下:
转义符保留单引号
b 退格
n换行
t
> >>名前 = 'mytnametistjack'>>> name #直输出变量name,转义符無法识别
'mytnametistjack'
>>> print(name) #调用print関数数、通常使用可能です
私の 名前 は jack
④生转义符抑制
特定の状況下では转义符を使用する必要がない可能性があります、Windowsでシステムファイルを使用するなど
>>>パス = 'c:newtext.txt'
>>> print(path)
c:
ew ext.txt # 系统会把n和t识别為转义符,导致命令失败
>>>パス = r'c:newtext.txt'
>>> print(path) #使用raw字符串关闭转义机制
c:newtext.txt
⑥三重引号编写多行字符串
>>> info = """私の名前は
...ジャック、私は正直者です
...男"""
>>> info #直调用变量不可正确显示
「私の名前はスンジャック、私は正直者です」
>>> print(info) #必要使用print関数数显表示
私の名前は
jack、私は正直
男です
注意:不要和注释搞混、注释没有赋值
⑦、文字列のシーケンス操作
変数の値はインデックス0の最初の値を保存し、1は2番目の値を保存します
>>> name = 'jack'
>>> len(名前)
4
>名前[0]
'j'
>名前[1]
'a'
>名前[2]
'c'
>>> name[3]
'k'
インデックスは逆にすることもできます。つまり、-1 は最後の値を表し、-2 は 2 番目の値を表します。最後の値へ 値
>>> name[-1]
'k'
>>> name[-2]
'c'
文字列もシャーディング操作をサポートします。 , 変数の取り出し
>>> name[1:3]
'ac' #変数の1桁目から3桁目(4桁目を除く)の内容を取得します
>> > name[2:4]
'ck'
>>> #変数の先頭から末尾までを取り出します
'
>>> name [:2] #先頭から最初の位置までの変数を取得します(2番目の位置を除く)
'ja'
3. リストもシーケンスの一種です。シーケンス上のすべての操作をサポートします。リストは配列に似ていますが、はるかに強力です。リストにはデータ型の制限がなく、さまざまな型のオブジェクトをリスト内に定義できます。また、リストのサイズは固定されておらず、必要に応じてリストのサイズを増減できます。また、リスト内の値は変更できます。
1. リスト操作
>>> info = ['jack','22','M']
>>> info
; '22', 'M'] #このリストの値は文字列と整数の両方です
>>> len(info) #リストの長さを表示します
リスト上のシーケンス操作
> ;>> ; info[0] #リストの最初の値を取得します
'jack'
>>> #リストの先頭から 2 番目までの値を取得します最後の値 (最初から最後までを除く)
['jack', '22']
>>> info[0:] #リストの先頭から最後の桁を取得します
['jack' , '22', 'M']
テーブルの特別なメソッド
リスト内の値を変更でき、リストのサイズも変更できます
>>> info = [' jack','22','M']
> >> info[0]='mark' #リストの 0 の値を変更します
>>> ', '22', 'M']
>>> ; help(info) #リストを表示するために使用できるメソッド
>>> info.append('American') #Append
>>> info
['mark', '22', 'M', 'American']
>>> #最初の値を削除
' 22'
>>> info
['mark', 'M', 'American']
>>> #新しい値 22 を最初の位置
>>> 情報
['mark', 22 , 'M', 'American']
>>> digit=[1,3,2,5,4]
>>> 数字
[1, 3, 2, 5, 4]
>>> #並べ替え
>>> 2, 3, 4, 5]
>>> digit.reverse () #シーケンス反転を実行
>>> digit
[5, 4, 3, 2, 1]
2 . リストのネスト
リストには、任意のネストをサポートする機能があり、任意の組み合わせでネストすることができ、複数のレベルでネストすることができます。この機能はデータ行列または多次元配列を実装できます
>>> m=[[1,2,3],[4,5,6],[7,8,9]]
> > ;> m
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>[1][2]
6
>>> m[1][2]=10 #2 番目のサブリストの 3 番目の値を表示します
>>> #2 番目のサブリストの 3 番目の値を変更します
10
4. タプル(tuple)
タプルは不変のリストとみなすことができ、タプルはシーケンス操作もサポートできます。一連の値を簡単に保存および取得できます
>>> information=('lusi',18,'F')
>>> information
('lusi', 18 , 'F' ')
>>> 情報[0] #最初の値を抽出
'lusi'
>>> 情報[1] #2番目の値を抽出
18
注: タプル内の値は変更できません。タプル全体は再割り当てのみ可能です (文字列の値は変更できず、再定義のみが可能です)
>>> id(情報)
3073641204L #Memory inタプル ID 番号
>>> information=("sdf","ahlk",67)
>>> info=(1,2,3) #タプルを再割り当てすると、ID 番号が変更され、新しいタプルが表示されます
>>> id(info)
3074861852L
>>> a=(1,) #要素が 1 つだけのタプルを定義する場合は、カンマを追加する必要があります。そうしないと整数として認識されます
>>>
< ;type 'タプル'>
>>> b=(1)
2> ただし、辞書の順序は信頼できません。つまり、辞書を作成したときの順序は必ずしも同じではありません。辞書を出力するときの順序として①辞書の定義>>> info={"name":"jack","age":20,"sex":"M"} #定義辞書>>> 情報 #辞書を見る{'年齢': 'ジャック', '性別': 'M'}>>> '] #辞書内のキーの値を表示します'jack'>>> info['country']='American' #辞書に新しい「key:value」を追加します> >> info{'country': 'American', 'age': 20, 'name': 'jack', 'sex': 'M'}②辞書のキーの順序辞書の順序は信頼できません。つまり、辞書を作成するときの順序は、辞書を出力するときの順序と必ずしも同じではありません
>>> info={"name":"jack", "age":20,"sex":"M"}>>> info #辞書出力の順序は必ずしも一致しません
{'age': 20, 'name': 'jack', ' sex': 'M'}>>> for key insorted(info): #for ループ、info に複数の値があり、数回ループします... print(key, ' ', info[key]) #sorted 関数は情報をリスト化し、sort でソートしてから for ループを使って出力します。インデントに注意してください...
('age', 'is', 20)('name', 'is', 'jack')('sex', 'is', 'M')6. ファイルタイプ ファイルタイプは、Python の外部ファイルへの主要なインターフェイスです。あなたのコンピュータ。ファイル オブジェクトを作成する場合は、組み込みの open 関数を呼び出し、外部ファイル名と処理モード文字列を文字列形式で渡します。 >>> f = open('test','w')#open 関数を使用してファイル名と処理モードを定義すると、ファイルは Linux の現在のディレクトリに作成されます サポートされているモード: 'r' はデフォルトで読み取り用に開きます 'w' は書き込み用に開く前にファイルをクリアします 'x' は新しいファイルを作成して書き込み用に開きます 'a' は書き込み用に開きます、既存のファイルの終わりに追加します>>> dir(f) #このオブジェクトでサポートされているメソッドを表示します['__class__', '__delattr__', '__doc__', '__enter__', '__exit__' 、 '__format__'、'__getattribute__ '、'__hash__'、'__init__'、'__iter__'、'__new__'、'__reduce__'、'__reduce_ex__'、'__repr__'、'__setattr__'、'__sizeof__'、'__str__'、' __subclasshook__'、'close'、'closed'、'encoding'、'errors'、'fileno'、'flush'、'isatty'、'mode'、'name'、'newlines'、'next'、'read' 、'readinto'、'readline '、'readlines'、'seek'、'softspace'、'tell'、'truncate'、'write'、'writelines'、'xreadlines']>>> .write('my name is jackn') #write メソッドを通じてファイルにデータを書き込みます>>> f.write('my age is 22n')>>> () #ファイル書き込み操作を閉じます>>> f.close()>>> t = open('test.txt', 'r') #r 処理モードを使用して開きますファイル>> ;> test = t.read() #変数を代入します>>> test #変数を直接呼び出すと内容が正しく表示されません'私の名前はジャックです私の年齢は22歳です
>>> print(test) #print 関数を使用してコンテンツを表示します
私の名前はジャックです
私の年齢は 22 です
7 ブール値
は、式が true であるかどうかを決定します
。>> = 2
8. 変数の種類を表示
>>> > タイプ(名前)
<タイプ 'str'>
>>> タイプ(年齢)
<タイプ 'int'>
>>> ' #引用符を追加して文字列に変換します
>>> type(age)
9. Python コメント
①# 文をコメントします
②'' '
Content #コンテンツの一部をコメントします
'''
10. モジュール
拡張子 py で終わるすべての Python ソース コード ファイルは、このモジュールをインポートして、全体のすべてのコンテンツを使用できます。モジュール。モジュールには関数やその他のスクリプト コンテンツを含めることができます。
モジュール検索パス
モジュールの検索は、最初にローカルの場所を検索し、次にsys.pathの環境変数に従って検索します
モジュールをインポートするとき、サフィックス名を記述する必要はありません
>> > import myhello
スクリプトを保存するパスを Python パスに追加する必要があります。追加しないと正しくインポートできません
# cd /usr/local/python27/lib/python2.7/site-packages/
# vim my.pth
/root # 独自の Python スクリプト ディレクトリをこのディレクトリに置き、.Pth で終わります
ヘルプを取得
>>> help('modules')
#サポートされているすべてのモジュールをクエリしますシステム組み込みモジュールとユーザーインポートを含むシステムによるモジュール
>>> #モジュール固有のヘルプを表示
>>> 数学的計算モジュールを紹介します
>>> dir(math) #このモジュールでサポートされている関数を表示します
>>> このモジュールの特定のコメントを表示します
>>> ) #このモジュール内の関数のコメントを見る
>> ;> math.pi #モジュール内の関数を呼び出す
3.141592653589793
③Pythonモジュールのimportメソッド
import module
モジュール名を新しい名前としてインポート#モジュールにエイリアスを付けます
from module name import variable name
モジュールをリロードします
インポートされたモジュールはPythonで直接実行されますが、インポートはリソースを消費するため、実行できるのは1回のみです(終了して再入力しない限り) session)
モジュールをインポートして繰り返し実行したい場合は、 reload を使用する必要があります
> ;>> import imp #Python では reload は組み込み関数ではなくなったため、インポートする必要があります
>>> imp.reload(myhello) #モジュール内で、リロード関数を呼び出します
または
>>> モジュールからリロード関数をインポートします
> >> reload(myhello)
hello
Python 知識の概要