【Python】Pythonの基本文法
先延ばしにするのは、仕事を便利で効率的にするためになぜ拒否して記録を作成するのか—【蘇暁夢】
記事ディレクトリ
1. 実験環境
デフォルトでは、Python 3 ソース ファイルはUTF-8でエンコードされ、すべての文字列は Unicode 文字列です。
ソース ファイルに他のエンコーディングを指定します。
# -*- coding: cp-1252 -*-
# 允许在源文件中使用 Windows-1252 字符集中的字符编码,对应适合语言为保加利亚语、白俄罗斯语、马其顿语、俄语、塞尔维亚语。
システム | バージョン |
---|---|
ワークステーション向け Windows 11 Pro | 22H2(22621.2134); |
VSコード | 1.81.0; |
Python3 | 3.11.4; |
1. 識別子
- 最初の文字はアルファベットまたはアンダースコア_である必要があります。識別子では大文字と小文字が区別されます。
- 識別子の残りの部分は、文字、数字、アンダースコアで構成されます。
Python 3 では、中国語の非 ASCII 識別子が変数名として許可されます。
2. Python の予約語 (キーワード: 識別子名としては使用できません)
予約語はキーワードであり、識別名として使用することはできません。Python の標準ライブラリには、現在のバージョンのすべてのキーワードを出力できるキーワード モジュールが用意されています。
>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', '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']
3. 注意事項
単一行のコメントは # で始まります。
複数行のコメントは、複数の # 記号でそれぞれ表すか、 ''' と """ を組み合わせて含めることで表すことができます。
1) スクリプトの最初の行の機能 [#!]: スクリプトを実行するパーサーを指定します (注: 有効にするためには最初の行で指定する必要があります)
[#! /Linux/Unix ユーザーにのみ適用されます。Windows ユーザーはこの行を追加する必要はありません。この行を追加すると、スクリプト プログラムの移植性が向上します]
使用法 1 [#!/usr/bin/python3 (スペースなし)] :
#!/usr/bin/python3
/usr/bin/python3 は、Linux/Unix ユーザーにおける python3 インタープリターのデフォルトのインストール パスであり、接頭辞 #! が最初の行に追加され、Linux/Unix ユーザーがこのパスにあるインタープリターを使用してこのスクリプトを実行することを指定します。パスはシステムによって異なります。Python コードを解釈する別のインタープリターがある場合は、そのインタープリターが配置されているパスを置き換えることもできます。
追加後、Linux/Unix ユーザーは ./ を直接使用して Python スクリプトを実行できます。そうしないと、Python パーサーが見つからないためエラーが発生します。
使用法 2 [この書き方を推奨] :
#!/usr/bin/env python3
この使用法は、Linux/Unix オペレーティング システム ユーザーがデフォルトの /usr/bin パスに Python をインストールしないようにするためです。システムはこの行を見つけると、まず env 設定で python3 のインストール パスを検索し、次に対応するパスでインタープリタ プログラムを呼び出して操作を完了します。(コードの移植性を高めるためにこの書き方を推奨します)
Windows パーサーのパス:
たとえば、Windows では、Microsoft App Store にインストールされている python3 を使用すると、デフォルトのパーサー パスは次のようになります。
C:/Users/[电脑用户名]/AppData/Local/Microsoft/WindowsApps/python3.11.exe
VS Code を使用してプログラムを実行して表示することもできます。
#!/usr/bin/env python3
# 第1个注释
# 第2个注释
'''
第3个注释
第4个注释
'''
"""
第5个注释
第6个注释
"""
print ("蘇小沐, Python从入门到入土!")
4. 線とくぼみ
Python の最も特徴的な機能は、中括弧{}を使用せずに、インデントを使用してコード ブロックを表すことです。
インデントされたスペースの数は可変ですが、同じコード ブロック内のステートメントには同じ数のインデントされたスペースが含まれている必要があります。
1) 複数行のステートメント
Python は通常、ステートメントを 1 行で記述しますが、ステートメントが非常に長い場合は、バックスラッシュ \ を使用して複数行のステートメントを実装できます。次に例を示します。
total = item_one + \
item_two + \
item_three
[]、{}、または () で囲まれた複数行のステートメントでは、バックスラッシュ \ を使用する必要はありません。次に例を示します。
total = ['item_one', 'item_two', 'item_three',
'item_four', 'item_five']
2) 空行[プログラムコードの一部に属する]
関数またはクラス メソッドは空白行で区切られ、新しいコードの始まりを示します。クラスと関数のエントリも空行で区切られ、関数エントリの先頭が強調表示されます。
空白行はコードのインデントと同じではなく、空白行は Python 構文の一部ではありません。書き込み時に空行は挿入されず、Python インタープリターはエラーなしで実行されます。ただし、空行の機能は、異なる機能または意味を持つ 2 つのコードを分離することであり、将来のコードのメンテナンスやリファクタリングに便利です。
3) ユーザー入力待ち【\n\n】
次のプログラムを実行し、Enter キーを押した後、ユーザーの入力を待ちます。
#!/usr/bin/env python3
input("\n\n按下 enter 键后退出。")
上記のコードでは、\n\n は結果の出力の前に 2 つの新しい空白行を出力します。ユーザーがEnterキーを押すと、プログラムは終了します。
4)複数のステートメントを同一行に表示【;】
Python では、複数のステートメントを英語のセミコロンで区切って同じ行に使用できます。
#!/usr/bin/env python3
import sys; x = 'runoob'; sys.stdout.write(x + '\n')
スクリプトを使用して上記のコードを実行すると、出力は次のようになります。
runoob
対話型コマンド ラインを使用して実行すると、出力は次のようになります。
runoob
7
ここで、7 は文字数を意味し、runoobは 6 文字、\nは 1 文字を意味し、合計7文字になります。
>>>import sys; sys.stdout.write(" hi ") # hi 前后各有 1 个空格
5) 複数のステートメントがコード グループを形成する
同じインデントを持つステートメントのグループはコード ブロックを形成し、これをコード グループと呼びます。
if、while、def、class などの複合ステートメントの場合、最初の行はキーワードで始まりコロン (:) で終わり、この行の後の 1 行以上のコード行がコード グループを形成します。
最初の行とそれに続くコードのグループを節 (clause) と呼びます。
if expression :
suite
elif expression :
suite
else :
suite
5. 数字の種類
Python には、整数、ブール値、浮動小数点数、複素数の 4 種類の数値があります。
数値型 | 説明する |
---|---|
int (整数) | 1 のように、long 整数として表現される整数型 int は 1 つだけあり、Python2 には Long はありません。 |
ブール_ | True など。 |
float (浮動小数点数) | 1.23、3E-2など。 |
複雑な(複数) | 1+2j、1.1+2.2jなど。 |
6. ストリング(紐)
記号は英語の記号です。
弦 | 説明する |
---|---|
' または" | 一重引用符 ' と二重引用符 " は、Python ではまったく同じように使用されます。 |
''' または""" | 複数行の文字列を指定するには、三重引用符 (''' または """) を使用します。 |
\ | 複数行のステートメントを実装するためのエスケープ文字。 |
r | r は raw、つまり生の文字列を指します。バックスラッシュをエスケープしないようにするには、rを使用します。たとえば、r "this is a line with \n"の場合、改行の代わりに\nが表示されます。 |
[]、 {}、 または() | []、{}、または () 内の複数行のステートメントでは、バックスラッシュ \ は必要ありません。 |
- "this " "is " "string"のように文字列を文字通りに連結すると、this is stringに自動的に変換されます。
- 文字列は+演算子で連結したり、***** 演算子で繰り返すことができます。
1) インデックス方式【0からスタート】
Python の文字列には、左から右に 0 から始まるインデックス付け方法と、右から左に -1 から始まるインデックス付け方法の 2 つがあります。
- Python の文字列は変更できません。
- Python には個別の文字タイプはなく、文字は長さ 1 の文字列です。
- 文字列インターセプトの文法形式は次のとおりです:変数 [先頭の添字: 末尾の添字: ステップ サイズ]
word = '字符串'
sentence = "这是一个句子。"
paragraph = """这是一个段落,
可以由多行组成"""
#!/usr/bin/env python3
str='123456789'
print(str) # 输出字符串
print(str[0:-1]) # 输出第一个到倒数第二个的所有字符
print(str[0]) # 输出字符串第一个字符
print(str[2:5]) # 输出从第三个开始到第六个的字符(不包含)
print(str[2:]) # 输出从第三个开始后的所有字符
print(str[1:5:2]) # 输出从第二个开始到第五个且每隔一个的字符(步长为2)
print(str * 2) # 输出字符串两次
print(str + '你好') # 连接字符串
print('------------------------------')
print('hello\nrunoob') # 使用反斜杠(\)+n转义特殊字符
print(r'hello\nrunoob') # 在字符串前面添加一个 r,表示原始字符串,不会发生转义
結果
注文 | 述べる | 出力結果 |
---|---|---|
印刷(文字列) | # 出力文字列 | 123456789 |
print(str[0:-1]) | # 最初から最後から 2 番目までのすべての文字を出力します | 12345678 |
print(str[0]) | # 文字列の最初の文字を出力します | 1 |
print(str[2:5]) | # 3文字目から5文字目までを出力 | 345 |
print(str[2:]) | # 3文字目からすべての文字を出力 | 3456789 |
print(str[1:5:2]) | # 2文字目から5文字目までを1文字おきに出力(ステップサイズは2 ) | 24 |
print(str * 2) | # 文字列を2回出力する | 123456789123456789 |
print(str + 'こんにちは') | # 接続文字列 | 123456789 こんにちは |
print('----------------------------') | # 出力文字 ---------------------------- | ------------------------------ |
print('hello\nYYDS') | # 特殊文字をエスケープするにはバックスラッシュ ()+n を使用します | こんにちは YYDS |
print(r'hello\nYYDS') | # 元の文字列を示すために文字列の前に r を追加します。エスケープは行われません | こんにちは\nYYDS |
[外部リンク画像の転送に失敗しました。ソース サイトにはリーチ防止メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-NMcFtKWC-1691640393190)(image-20230809220101958.png)]
7. 印刷出力
print のデフォルトの出力は改行です。改行を使用しないようにするには、変数の最後にend=""を追加する必要があります。
#!/usr/bin/env python3
x="a"
y="b"
# 换行输出
print( x )
print( y )
print('---------')
# 不换行输出
print( x, end=" " )
print( y, end=" " )
print()
結果:
a
b
---------
a b
8.インポートとインポートから...インポート
Python でimportまたはfrom...import を使用して、対応するモジュールをインポートします。
文法形式 | 説明する |
---|---|
何らかのモジュールをインポートする | モジュール全体 (somemodule) をインポートする |
somemoduleからsomefunctionをインポート | モジュールから関数をインポートする |
somemodule から firstfunc、secondfunc、threefunc をインポートします | モジュールから複数の関数をインポートする |
何らかのモジュールのインポートから | モジュール内のすべての関数をインポートする |
1) SYSモジュールをインポートする
import sys
print('================Python import mode==========================')
print ('命令行参数为:')
for i in sys.argv:
print (i)
print ('\n python 路径为',sys.path)
2) sys モジュールの argv メンバーと path メンバーをインポートします
from sys import argv,path # 导入特定的成员
print('================python from import===================================')
print('path:',path) # 因为已经导入path成员,所以此处引用时不需要加sys.path
9. コマンドラインパラメータ
多くのプログラムでは、いくつかの操作を実行して基本的な情報を表示できます。Python では -h パラメーターを使用して、各パラメーターのヘルプ情報を表示できます。
$ python -h
usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
Options and arguments (and corresponding environment variables):
-c cmd : program passed in as string (terminates option list)
-d : debug output from parser (also PYTHONDEBUG=x)
-E : ignore environment variables (such as PYTHONPATH)
-h : print this help message and exit
[ etc. ]
要約する
この記事は、【Cainiao Tutorial】のWebサイトでの学習記録です、Cainiao Tutorialの記録は非常に詳しく書かれており、独学・研究情報としては非常にオススメです!
一方的に書いており、あくまで記録ですので、間違いや漏れがあればご指摘ください。
参考文献
Python3 の基本文法 | ルーキー チュートリアル (runoob.com)
名前 | 時間 |
---|---|
編集開始日 | 2023 年 8 月 9 日 |
最終編集日 | 2023 年 8 月 10 日 |