python3基本データ型
Pythonの変数を宣言する必要はありません。 各変数は、使用する前に割り当てられている必要があり、変数の後変数の割り当てが作成されます。
Pythonでは、変数は変数である、それは我々が "タイプ"と呼ぶタイプがメモリ内のオブジェクトの意味の範囲内で変数の型ではありません。
等号(=)は、変数に値を割り当てるために使用されます。
左側の等号(=)演算子は変数名、右側に等号(=)演算子は、変数に格納された値です。 例えば:
#!/usr/bin/python3 counter = 100 # 整型变量 miles = 1000.0 # 浮点型变量 name = "w3big" # 字符串 print (counter) print (miles) print (name)
上記のプログラムが出力されます以下の結果:
100 1000.0 w3big
変数の代入の複数
Pythonはあなたが同時に複数の変数を割り当てることができます。 例えば:
a = b = c = 1
上記の例では、Integerオブジェクトを作成し、1の値は、三つの変数は、同じメモリ空間に割り当てられています。
また、複数のオブジェクトに複数の変数を指定することができます。 例えば:
a, b, c = 1, 2, "w3big"
上記の例では、2つの整数オブジェクトの割り当て1及び2変数aおよびbに変数cに割り当てられ、文字列オブジェクト」w3big」。
標準データ型
python3 6つの標準データタイプがあります。
- 数値(デジタル)
- 文字列(String)を
- 一覧(リスト)
- タプル(タプル)
- セット(コレクション)
- 辞書(辞書)
数値(デジタル)
python3サポートint型、float型、ブール値、(複数の)複雑。
Pythonの3では、唯一の1つの整数型int、long整数、ロングの無python2として表現があります。
ほとんどの言語と同様に、割り当てと計算値の種類は非常に直感的です。
ビルトインタイプ()関数は、参照されるオブジェクト変数の型を照会するために使用することができます。
>>> a, b, c, d = 20, 5.5, True, 4+3j >>> print(type(a), type(b), type(c), type(d)) <class 'int'> <class 'float'> <class 'bool'> <class 'complex'>
注:Python2は0がFalseを示す数字を使用していないブール型、ではない、真(1)で表されます。TrueとFalseでのpython3にキーワードとして定義されていますが、その値は0または1であり、彼らは番号を追加することができます。
あなたが値を指定すると、Numberオブジェクトが作成されます。
var1 = 1 var2 = 10
あなたはまた、いくつかのオブジェクト参照を削除するには、デルのステートメントを使用することができます。
デルの文の構文は次のとおりです。
del var1[,var2[,var3[jaja,varN]]]]
あなたはデル・ステートメントを使用して、単一または複数のオブジェクトを削除することができます。 例えば:
del var del var_a, var_b
数値演算
>>> 5 + 4 # 加法 9 >>> 4.3 - 2 # 减法 2.3 >>> 3 * 7 # 乘法 21 >>> 2 / 4 # 除法,得到一个浮点数 0.5 >>> 2 // 4 # 除法,得到一个整数 0 >>> 17 % 3 # 取余 2 >>> 2 ** 5 # 乘方 32
注意:
- 1、Pythonのは、次のような複数の変数において、a、b = 1、2を割り当てることができます。
- 図2において、変数は、異なるタイプのオブジェクトに割り当てることができます。
- 3は、除算(/)の値が常に使用//オペレータのために浮動小数点、整数を返します。
- 図4に示すように、ハイブリッド・コンピューティングでは、Pythonの整数を浮動小数点数に変換されます。
数値型の例
int型 | フロート | 複雑な |
---|---|---|
10 | 0.0 | 3.14j |
100 | 15.20 | 45.j |
-786 | -21.9 | 9.322e-36J |
080 | 32.3 + E18 | .876j |
-0490 | -90。 | -.6545 + 0J |
-0x260 | -32.54e100 | 3E + 26J |
0x69の | 70.2-E12 | 4.53e-7J |
Pythonはまた、あなたが+ bjの、または複合体を使用することができ、実部と虚部によって複素数、複素数をサポートしています(a、b)は実部と虚部bが浮動小数点であること
文字列(String)を
単一引用符( ')または二重引用符( ")引用符でPython文字列、特殊文字をエスケープするには、バックスラッシュ(\)を使用。
次のように迎撃文字列の構文は次のとおりです。
变量[头下标:尾下标]
0に開始値としてインデックスの値、-1終わりに開始位置のために。
プラス記号(+)はアスタリスク(*)は、複製の数である数に続いて、現在の文字列のコピーを示し、コネクタの文字列です。 例としては、次のとおりです:
#!/usr/bin/python3 str = 'w3big' print (str) # 输出字符串 print (str[0:-1]) # 输出第一个个到倒数第二个的所有字符 print (str[0]) # 输出字符串第一个字符 print (str[2:5]) # 输出从第三个开始到第五个的字符 print (str[2:]) # 输出从第三个开始的后的所有字符 print (str * 2) # 输出字符串两次 print (str + "TEST") # 连接字符串
上記のプログラムが出力されます以下の結果:
w3big Runoo R noo noob w3bigw3big w3bigTEST
Pythonは、バックスラッシュ(\)を使用すると、バックスラッシュが起こるしたくない場合は、特殊文字をエスケープエスケープ、あなたは元の文字列の文字列表現の前にRを追加することができます使用しています。
>>> print('Ru\noob') Ru oob >>> print(r'Ru\noob') Ru\noob >>>
また、行継続文字としてバックスラッシュ(\)は、次の行が前の行の続きであることを示します。 あなたはまた、""を使用することができます"ja." ""や'' 'ja.' '複数行にまたがります'。
(注)、Pythonは全く別々の文字型は長さ1の文字列ではないです。
>>> word = 'Python' >>> print(word[0], word[5]) P n >>> print(word[-1], word[-6]) n P
違いは、C言語の文字列で、Pythonの文字列は変更できないことです。 Wordなどの場所の割り当て、[0] = 'M'のインデックスは、エラーが発生します。
注意:
- 1は、バックスラッシュをエスケープするために使用することができ、バックスラッシュエスケープは、rの使用が発生しないことができます。
- 2、文字列+演算子は*オペレータ反復と一緒に使用することができます。
- 3、Pythonの文字列2のインデックス作成方法、-1で始まる右から左へ、0から始まる左から右へ。
- 4、Pythonの文字列を変更することはできません。
一覧(リスト)
リスト(一覧)は、最も頻繁に使用されるPythonのデータ型です。
あなたは、コレクションクラスのほとんどを達成するために、リスト・データ構造を完成することができます。 同じではないかもしれないリストの要素を入力し、それはデジタル、文字列があっても(ネストと呼ばれる)のリストを含めることができますサポートしています。
リストは要素のコンマ区切りリスト、角括弧([])の間に書かれています。
そして、文字列、リストはまた、索引付けされ、傍受することができ、リストの後インターセプトリターンが必要な要素を含む新しいリストです。
リストには、構文は次のとおりです傍受しました:
变量[头下标:尾下标]
0に開始値としてインデックスの値、-1終わりに開始位置のために。
プラス記号(+)はアスタリスク(*)が繰り返し動作で、連結演算子のリストです。 以下の例:
#!/usr/bin/python3 list = [ 'abcd', 786 , 2.23, 'w3big', 70.2 ] tinylist = [123, 'w3big'] print (list) # 输出完整列表 print (list[0]) # 输出列表第一个元素 print (list[1:3]) # 从第二个开始输出到第三个元素 print (list[2:]) # 输出从第三个元素开始的所有元素 print (tinylist * 2) # 输出两次列表 print (list + tinylist) # 连接列表
上記の出力の例:
['abcd', 786, 2.23, 'w3big', 70.2] abcd [786, 2.23] [2.23, 'w3big', 70.2] [123, 'w3big', 123, 'w3big'] ['abcd', 786, 2.23, 'w3big', 70.2, 123, 'w3big']
そして、Pythonの文字列は、リストの要素を変更することができ、同じではありません。
>>> a = [1, 2, 3, 4, 5, 6] >>> a[0] = 9 >>> a[2:5] = [13, 14, 15] >>> a [9, 2, 13, 14, 15, 6] >>> a[2:5] = [] # 删除 >>> a [9, 2, 6]
リストには、後述するなどのappend()、ポップ()、などの多くの方法が、あります建てました。
注意:
- 1は、リストは、カンマ要素で区切られた、括弧の間に書かれました。
- 2、および同じ文字列、リストには、インデックス付けとスライスすることができます。
- 3は、あなたが+演算子スプライシングを使用することができます一覧表示します。
- 図4に示すように、要素のリストを変更することができます。
タプル(タプル)
タプル(タプル)のタプルを変更できないことを除いて、リストに似ています。 括弧内に書かれたタプル(())、カンマで区切られた要素。
タプルの要素型が同じではないかもしれません。
#!/usr/bin/python3 tuple = ( 'abcd', 786 , 2.23, 'w3big', 70.2 ) tinytuple = (123, 'w3big') print (tuple) # 输出完整元组 print (tuple[0]) # 输出元组的第一个元素 print (tuple[1:3]) # 输出从第二个元素开始到第三个元素 print (tuple[2:]) # 输出从第三个元素开始的所有元素 print (tinytuple * 2) # 输出两次元组 print (tuple + tinytuple) # 连接元组
上記の出力の例:
('abcd', 786, 2.23, 'w3big', 70.2) abcd (786, 2.23) (2.23, 'w3big', 70.2) (123, 'w3big', 123, 'w3big') ('abcd', 786, 2.23, 'w3big', 70.2, 123, 'w3big')
タプルは文字列と類似して、インデックスを付けることができ、下付き文字のインデックスは、0から始まり-1場所については初めの終わりから。 また、(上記のさらなる説明を参照しない)傍受することができます。
実際には、特別なタプルとして文字列を置くことができます。
>>> tup = (1, 2, 3, 4, 5, 6) >>> print(tup[0]) 1 >>> print(tup[1:5]]) (2, 3, 4, 5) >>> tup[0] = 11 # 修改元组元素的操作是非法的 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'tuple' object does not support item assignment >>>
なおタプル要素は変更することができないが、それはこのようなリストのリストとして可変オブジェクトを含むことができます。
構造は、特別な0または1要素のタプルが含まれているので、いくつかの追加の構文規則があります:
tup1 = () # 空元组 tup2 = (20,) # 一个元素,需要在元素后添加逗号
文字列、リストやタプルは、配列(配列)を属します。
注意:
- 1、同じ文字列で、タプルを変更することはできません。
- 2、タプルはまた、インデックス付けと同じようにスライスすることができます。
- 3、0または1の元素を含む文法規則のタプルの特殊な構造に注意を払います。
- 4、タプルはまた、+演算子のスプライシングを使用することができます。
セット(コレクション)
組(セット)の配列のユニークな要素の障害です。
基本的な機能は、メンバーシップのテストを運ぶと重複する要素を削除することです。
あなたは、コレクションの注意を作成するために、中括弧({})または設定()関数を使用することができます。代わりに、{ため}空の辞書を作成するために使用される} {の)(空のセットを設定する必要があります作成しています。
#!/usr/bin/python3 student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'} print(student) # 输出集合,重复的元素被自动去掉 # 成员测试 if('Rose' in student) : print('Rose 在集合中') else : print('Rose 不在集合中') # set可以进行集合运算 a = set('abracadabra') b = set('alacazam') print(a) print(a - b) # a和b的差集 print(a | b) # a和b的并集 print(a & b) # a和b的交集 print(a ^ b) # a和b中不同时存在的元素
上記の出力の例:
{'Jack', 'Rose', 'Mary', 'Jim', 'Tom'} Rose 在集合中 {'r', 'b', 'a', 'c', 'd'} {'r', 'b', 'd'} {'a', 'l', 'z', 'b', 'm', 'd', 'r', 'c'} {'a', 'c'} {'l', 'z', 'b', 'm', 'd', 'r'}
辞書(辞書)(辞書)
辞書(辞書)Pythonは組み込みデータ・タイプ別の非常に便利です。
リストはバインディングオブジェクトを注文され、辞書は、オブジェクトの順序なしコレクションです。 2つの違いは次のとおりです。辞書の要素のうち、むしろオフセットのアクセスを通じてよりキーによってアクセスされています。
値(値)のペア:それは、順序付けられていないキー(鍵)である「{}」のロゴ、と辞書辞書マッピングタイプです。
キー(キー)は不変でなければなりません。
同じ辞書では、キー(鍵)は一意である必要があります。
#!/usr/bin/python3 dict = {} dict['one'] = "1 - 本教程" dict[2] = "2 - 本工具" tinydict = {'name': 'w3big','code':1, 'site': 'www.w3write.com'} print (dict['one']) # 输出键为 'one' 的值 print (dict[2]) # 输出键为 2 的值 print (tinydict) # 输出完整的字典 print (tinydict.keys()) # 输出所有键 print (tinydict.values()) # 输出所有值
上記の出力の例:
1 - 本教程 2 - 本工具 {'name': 'w3big', 'site': 'www.w3write.com', 'code': 1} dict_keys(['name', 'site', 'code']) dict_values(['w3big', 'www.w3write.com', 1])
次のようにコンストラクタのdict()は辞書から直接一連のキーを構築することができます。
>>> dict([('w3big', 1), ('Google', 2), ('Taobao', 3)]) {'Taobao': 3, 'w3big': 1, 'Google': 2} >>> {x: x**2 for x in (2, 4, 6)} {2: 4, 4: 16, 6: 36} >>> dict(w3big=1, Google=2, Taobao=3) {'Taobao': 3, 'w3big': 1, 'Google': 2}
また、例えば、組み込み関数の辞書の種類によっては、あるクリア()、キー()、値()など。
注意:
- 1は、その要素が対である辞書マッピングタイプ、です。
- 2、キーワードの辞書は不変でなければならず、繰り返すことはできません。
- 3.{}を使用して空の辞書を作成します。
Pythonのデータ型変換
時には、我々はあなたが唯一の関数名などのデータを入力する必要があり、内蔵するデータ型の変換、データ型の変換が必要です。
いくつかの組み込み関数は、データ型間の変換を実行することができます。 これらの関数は、変換された値を表す新しいオブジェクトを返します。
関数 | 説明 |
---|---|
int型(X [、ベース]) | 整数にxを変換します |
フロート(x)は、 | 浮動小数点数xへの遷移 |
複素数(実数[、IMAG]) | 複合体を作成します。 |
STR(x)は | オブジェクトは、文字列xに変換され、 |
repr(x)は、 | オブジェクトxは、文字列式に変換され、 |
evalの(文字列) | これは、文字列、有効なPythonの式を計算するために使用し、オブジェクトを返します。 |
タプル(S) | シーケンスsタプルへ |
リスト(複数可) | 配列sはリストに変換します |
セット(複数可) | 変数セットに変換 |
dictの(d)に | 辞書を作成します。 dは(キー、値)タプルのシーケンスでなければなりません。 |
frozensetの(複数可) | 不変なコレクションに変換 |
CHR(X) | 文字に整数に変換されます |
unichr(x)は、 | 整数は、Unicode文字に変換され、 |
ORD(x)は | 文字は、整数値に変換します |
六角(x)は、 | 整数を16進文字列に変換され、 |
10月(X) | 整数は8進数の文字列に変換され、 |