python3クイックスタート(2) - のpython3の基礎

python3クイックスタート(2) - のpython3の基礎

、のpython3基本的な文法

1、のpython3コーディング

UTF-8エンコーディングのデフォルト、Pythonのソースコードファイルでは、すべての文字列は次のようにユニコード文字列は、Pythonのソースコードファイルに異なるエンコーディングを指定することができます:
# -*- coding: utf-8 -*-

2、識別子

次のようにPython言語識別子ルールがある:
A、最初の文字はアルファベット文字またはアンダースコアでなければなりません。
B、他の文字、数字、アンダースコアからの部分的識別子。
C、識別子敏感。
Pythonの3では、非ASCII識別子を許可します。

3、Pythonは予約語

それはない任意の識別子名として、予約語のキーワードです。Pythonの標準ライブラリモジュールは、キーワードを提供し、あなたは、出力のすべてのキーワードの現在のバージョンを次のことができます。

>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>> 

4、プリント出力

デフォルトの印刷出力が「」=あなたが達成したい場合は、変数を加えた最後の最後でラップする必要はありません、新しいラインです。

#!/usr/bin/python3

print("Hello Python3")
print("Hello ", end="")
print("Python", end="3\n")

5、Pythonのコメント

単一行コメントでPythonは#で始まります。

#! /usr/bin/python3
# 第一个注释
print("Hello Python3")  #第二个注释

python3マルチラインは、3つのシングルクオート 『』または3二重引用符 『とコメント』。 "

#!/usr/bin/python3 
'''
第三注释
第四注释
'''

"""
第五注释
第六注释
"""
print("Hello Python3")

6、インデント

Pythonは中括弧{}を使用することなく、インデントを表すために使用される最もユニークなコードブロックです。
インデントされるスペースの数は可変であるが、同じ文では、コードのブロックがなく、同じインデントが実行時エラーが発生した場合、インデントするスペースの同じ数を含む必要があります。例としては、次のとおりです:

#!/usr/bin/python3
flag = True
if flag:
    print("True")
    print("true")
else:
    print("False")
    print("false")
print ("Hello Python3")

7、マルチラインステートメント

Pythonは通常、1つのライナー文ですが、文が非常に長い場合は、複数行のステートメントを達成するためにバックスラッシュ()を使用することができます。

#!/usr/bin/python3
item_one = 1
item_two = 2
item_three = 3
total = item_one + \
        item_two + \
        item_three
print(total)

[]内(バックスラッシュを使用しない複数の行で、{}、または()ステートメント)、例えば

#!/usr/bin/python3
item_one = 1
item_two = 2
item_three = 3
total = item_one + \
        item_two + \
        item_three
print(total)
total = ['item_one', 'item_two', 'item_three',
       'item_four', 'item_five']
print(total)

8、変数

Pythonは、使用前に割り当てなければならない、それは変数の代入後に作成されます各変数で変数を宣言する必要はありません。
Pythonの、ない変数の型では、オブジェクト型は、変数の意味におけるメモリのタイプです。
Pythonは複数の変数への同時割り当てることができます。

a = b = c = 1
a, b, c = 1, True, "hello"
x,y = 1,2
x,y = y,x
print(x,y)

Pythonの変数名はハンガリーのルールをお勧めします。

図9に示すように、ユーザ入力

#!/usr/bin/python3

input("Please enter the name:\n")

Pythonのコードは、上記終了するにはEnterキーを押して、ユーザの入力を待ちます。

10、デジタルタイプ

Pythonのデジタル4つのタイプがあります。整数、ブール、浮動小数点および複合体が。
INT(整数)、唯一の整数型、整数、長い整数表現しました。
ブール値(ブール値)、TrueまたはFalse。
フロート(浮動小数点)、など2-1.23,3E
コンプレックス(複合体)、+ 2Jなど1、1.1 + 2.2j

11、文字列

パイソンは、複数行の文字列を作成するために、トリス引用符(「」「または」「」)、単一および二重引用符文字列を作成するために使用される
「\」エスケープを
バックスラッシュをエスケープするために使用され、rは使用することができますバックスラッシュは、rと、発生しませんしましょう「これは、\と行である n」はラップではない、表示されます\されたnは。
演算子*が繰り返されると、文字列は、+演算子で一緒に接続することができます
Pythonで開始するために左にある文字列のインデックスは、左から右へ0から始まり、右の2つの方法がある-1。
文字列がPythonで変更することができない。
Pythonは別個の文字タイプは長さ1の文字列ではありません。

二、オペレータのpython3

1、算術演算子

加(+):两对象相加
减(-):两对象相减
乘(*):两个数相乘或是返回一个被重复若干次的字符串
除(/):x除以y
取模(%):返回除法的余数
幂(**):返回x的y次幂
取整除(//):向下取接近除数的整数

算術演算子のpython3のサンプルコード:

#!/usr/bin/python3
a = 10
b = 5
c = 0
# +
c = a + b
print("a + b = ", c)
# a + b =  15
a = "Hello"
b = "Python3"
c = a + b
print("a + b = ", c)
#a + b =  HelloPython3

# -
a = 10
b = 5
c = a -b
print("a - b = ", c)
# a - b =  5

# *
a = 10
b = 3
c = a * b
print("a * b = ", c)
#a * b =  30
a = "Hello"
b = 3
c = a * b 
print("a * b = ", c)
#a * b =  HelloHelloHello

# /
a = 10
b = 3
c = a / b
print("a / b = ", c)
#a / b =  3.3333333333333335

# %
a = 10
b = 3
c = a % b
print("a % b = ", c)
#a % b =  1

# **
a = 2
b = 10
c = a ** b
print("a ** b = ", c)
# a ** b =  1024

# //
a = 10
b = 3
c = a // b
print("a // b = ", c)
# a // b =  3

2、比較演算子

等于(==):比较对象是否相等
不等于(!=):比较对象是否不相等
大于(>):x是否大于y
小于(<):是否x小于y
大于等于(>=):x是否大于等于y
小于等于(<=):x是否小于等于y

サンプル次のようにコードのpython3関係演算子は次のとおりです。

#!/usr/bin/python3
a = 21
b = 10
c = 0

if (a == b):
    print("a 等于 b")
else:
    print("a 不等于 b")

if (a != b):
    print("a 不等于 b")
else:
    print("a 等于 b")

if (a < b):
    print("a 小于 b")
else:
    print("a 大于等于 b")

if (a > b):
    print("a 大于 b")
else:
    print("a 小于等于 b")

if (a <= b):
    print("a 小于等于 b")
else:
    print("a 大于  b")

if (b >= a):
    print("b 大于等于 a")
else:
    print("b 小于 a")

文字列の場合、リストは、配列の一つの要素によって実行される比較によれば、比較動作をタプル。

a1 = "hello"
a2 = "hello"
print(a1 == a2)

b1 = [1,2,3]
b2 = [1,2,3]
print(b1 == b2)

c1 = (1,2,3)
c2 = (1,2,4)
print(c2 > c1)

図3に示すように、代入演算子

赋值(=):简单赋值运算
加法赋值(+=):c += a等效于c = c + a
减法赋值(-=):c -= a等效于c = c - a
乘法赋值(*=):c *= a等效于c = c * a
除法赋值(/=):c /= a等效于c = c / a
取模赋值(%=):c %= a等效于c = c % a
幂赋值(**=):c **= a等效于c = c ** a
取整除赋值(//=):c //= a 等效于c = c // a

例のpython3代入演算子次のように

#!/usr/bin/python3
a = 21
b = 10
c = 0

# =
c = a + b
print("c = ", c)
# c = 31

# +=
a = 10
c = 3
c += a
print("c = ", c)
# c = 13

a = 3
c = 10
# -=
c -= a
print("c = ", c)
# c = 1

# *=
a = 3
c = 5
c *= a
print("c = ", c)
# c = 15

# /=
a = 2
c = 10
c /= a
print("c = ", c)
# c = 5.0

# %=
a = 3
c = 10
c %= a
print("c = ", c)
# c = 1

# **=
a = 10
c = 2
c **= a
print("c = ", c)
# c = 1024

# //=
c = 10
a = 3
c //= a
print("c = ", c)
# c = 3

4、論理演算子

ロジック(および):XおよびY、XがFalseである場合、XおよびY返すX、Yのそれ以外の場合は値。
そうでない場合はxまたはy、xは、Xの戻り値がtrueである場合、yの値:論理和(OR)。
論理NOT(しない):xがTrueの場合ではないxが、それはFalseを返します。xがFalseの場合、Trueを返します。
次のように例のpython3論理演算子は以下のとおりです。

#!/usr/bin/python3
x = 10
y = 5

# x and y
print(x and y) #5
print(0 and y) #0

# x or y
print(x or y)  #10
print(0 or y)  #5

# not x
print(not x)
print(not False)

5、ビット演算子

ビット単位のAND演算子(&):対応する2つのビットが1である場合、2つの値を計算する際に関与するが、その後、1ビットの結果は、そうでなければ0です。
ビット単位のOR演算子(|):限りつの対応するバイナリ・ビットが1であるように、それは結果ビットです。
ビット単位の排他的OR演算子(^)2つの異なる対応するバイナリが、結果は1です。
ビット単位(〜):各バイナリデータビットに対して否定、即ち、1を0に、0〜1。(X + 1) - 〜Xに相当。
左シフト演算子(<<):すべてのビットの左数に各バイナリオペランドは、「<<」移動のビット数は、上部、下部0を捨て、権利を指定します。
右シフト演算子(>>):それぞれのバイナリのオペランドがすべて左右ビット数「>>」であり、「>>」のビットの数は右の指定。
例のpython3のビット単位の演算子を次のように:

#!/usr/bin/python3

a = 0b00111100
b = 0b00001101
c = 0

c = a & b;
print("c 的值为:", bin(c))  # 0b1100

c = a | b;
print("c 的值为:", bin(c))  # 0b111101

c = a ^ b;
print("c 的值为:", bin(c))  # 0b110001

c = ~a;
print("c 的值为:", bin(c))  # -0b111101

c = a << 2;
print("c 的值为:", bin(c))  # 0b11110000

c = a >> 2;
print("c 的值为:", bin(c))  # 0b1111

図6に示すように、部材オペレータ

Pythonの支持部材オペレーター、テストケースは、文字列、リストやタプルを含むメンバーの数が含まれています。
中:あなたが見つけた場合は指定されたシーケンスの値がそうでなければFalse、Trueを返します。
ないで:あなたが指定した順序で値が見つからない場合はtrue、そうでない場合はfalseを返します。
例のpython3部材オペレータ次のように

#!/usr/bin/python3

a = 1
b = 20
list = [1, 2, 3, 4, 5]

if (a in list):
    print("变量a在给定的列表list中")
else:
    print("变量a不在给定的列表list中")

if (b not in list):
    print("变量b不在给定的列表list中")
else:
    print("变量b在给定的列表list中")

7、オペレータのアイデンティティ

メモリセルの2のアイデンティティを比較するためのpython3演算子。
である:Xは、同じオブジェクトへの参照は、そうでなければFalseを返し、Trueを返す場合、2つの識別子は、オブジェクトから参照されていないかどうかを決定するため、Yです。
ない:xは、参照結果は、同じオブジェクトはTrueを返し、さもなければ偽でない場合、識別子は、2つの異なるオブジェクトから参照されていないかどうかを決定するため、Yはありません。
例のpython3のアイデンティティ演算子次のように:

#!/usr/bin/python3

a = 20
b = 20

if (a is b):
    print("a和b有相同的标识")
else:
    print("a和b没有相同的标识")

if (a is not b):
    print("a和b没有相同的标识")
else:
    print("a和b有相同的标识")
Python中对象类型的判断使用is×××tance方法进行判断。
a = "hello"
print(is×××tance(a, str))

8、演算子の優先順位

Pythonのオペレータは、最高最低の優先順位を次のように
python3クイックスタート(2) - のpython3の基礎
括弧不明ファジー表示決意を用いて推薦優先順位符号化処理を。

三、のpython3プロセス制御

1、条件付き制御

条件文または(TrueまたはFalse)実行結果の声明によるPythonは実行コードブロックを決定します。
次のようにif文はPythonの一般的な形式は次のとおりです。

if condition_1:
    statement_block_1
elif condition_2:
    statement_block_2
else:
    statement_block_3

Trueにあれば「condition_1は」「statement_block_1」ブロック・ステートメントを実行します。
もし偽、裁判官「condition_2」に「condition_1」。
Trueにあれば「condition_2は」「statement_block_2」ブロック・ステートメントを実行します。
Falseに「condition_2」場合は、「statement_block_3」ブロック・ステートメントを実行します。
コロンの後の各条件は、(:)条件が満たされた後に実行されるステートメントのブロックを表します。
インデント文ブロックを分割するために使用される条件の制御は、同じインデント内の文の数が一緒にブロックを形成します。
Pythonでませんスイッチ- case文。

#! /usr/bin/python3

score = int(input("Please enter the score: "))

if score < 60:
    print("D")
elif score < 80:
    print("C")
elif score < 90:
    print("B")
elif score <= 100:
    print("A")

場合はネストされたステートメントでは、...のelif ...他の構造であれば、別の構成では...のelif ... ELSE IFできます。

図2に示すように、制御ループ

ループ内で、そこにしばらくのPython。Pythonの一般的な形式の文は次のようにしながら:

while 判断条件:
    语句

Pythonで何do..whileループの場合ありません。

#! /usr/bin/python3

N = 100
counter = 1
n = 0
while counter <= N:
    n += counter
    counter += 1

print("1 到 %d 之和为: %d" % (N, n))

他の実行中には...他に条件文を阻止するために偽です。

#! /usr/bin/python3

count = 0
while count < 5:
    print("Hello Python3")
    count += 1
else:
    print("Hello Go")

以下のようにwhileステートメントの唯一の本体、whileステートメントは、同じ行に書き込むことができる場合。

#! /usr/bin/python3

flag = 1

while flag: print('Hello Python3')

print("Good bye!")

ループのPythonは、このようなリストや文字列などのアイテムのシーケンスを反復することができます。
次のサイクルのための一般的なフォーマット:

for <variable> in <sequence>:
    <statements>
else: 
    <statements>
#! /usr/bin/python3

languages = ["C", "C++", "Perl", "Python"]
for x in languages:
    print(x)

ループ文の使用は、このループから抜け出すために使用され、ループのため正常に終了しない、すなわち、他のブランチは実行されません。

#! /usr/bin/python3

languages = ["C", "C++", "Perl", "Python"]
for x in languages:
    if x == "Python":
        print(x)
        break
    print(x)
else:
    print("None")

範囲()組み込み関数は、列の数を生成するために使用されてもよいです。

#! /usr/bin/python3

for x in range(5):
    print(x)
# 指定区间
for x in range(5,9):
    print(x)

# 指定区间和步长
for x in range(0,10,2):
    print(x)

for x in range(-10,-100,-10):
    print(x)

a = [1,2,3,4,5,6,7,8]
for i in range(0, len(a), 2):
    print(a[i])

b = a[0:len(a):2]
print(b) # [1, 3, 5, 7]

配列によって[0:LEN(配列) :工程] ステップは、配列からの各要素の新しいシーケンスを形成するステップを取ることができます。
Pythonは、空の文は、プログラム構造の整合性を維持何もせずに通過し、一般的にプレースホルダ文として使用するために使用されるパス。

#! /usr/bin/python3

for x in range(5):
    pass

3、達成するために切り替えます

:Pythonはスイッチをサポートしていない、実装以下、辞書スイッチを使用することによって達成することができる
A、辞書getメソッドを使用してフォールトトレランス値、switchステートメントのデフォルトケースのプロセス。
Bは、代わりに、switch文のコードブロックのメソッド名を対応する辞書vlaueに設定します。
Cは、異なるキーに同じ値、アナログスイッチの浸透を設定されています。
次のように例辞書スイッチが実装さ:

#!/usr/bin/python3

def taskForRest():
    print("Today is easy!")
def taskForWork():
    print("Good job!")
def taskForDefault():
    print("Invalid input!")

switchDic = {"Sunday":taskForRest,
            "Monday":taskForWork,
            "Tuesday":taskForWork,
            "Wednesday":taskForWork,
            "Tursday":taskForWork,
            "Friday":taskForWork,
            "Saturday":taskForRest
}

monday = "Monday"
switchDic.get(monday,taskForWork())
tuesday = "Tuesday"
switchDic.get(tuesday, taskForWork)()
today = "Today"
switchDic.get(today,taskForDefault())

ます。https://blog.51cto.com/9291927/2409575で再現

おすすめ

転載: blog.csdn.net/weixin_34409357/article/details/92651099