Python-基本構文
前のページ次のページ
Python 言語には、Perl、C、および Java と多くの類似点があります。ただし、言語間には明確な違いがいくつかあります。
最初の Python プログラム
さまざまなプログラミング モードでプログラムを実行してみましょう。
インタラクティブ モード プログラミング
スクリプト ファイルをパラメーターとして渡さずにインタープリターを呼び出すと、次のプロンプトが表示されます −
$ python Python 2.4.3 (#1, Nov 11 2010, 13:34:43) [GCC 4.1.2 20080704 (Red Hat 4.1.2-48)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
Python プロンプトで次のテキストを入力し、Enter キーを押します −
>>> print "Hello, Python!"
新しいバージョンの Python を実行している場合は、print ("Hello, Python!"); のように括弧付きの print ステートメントを使用する必要があります。 .ただし、Python バージョン 2.4.3 では、これにより次の結果が生成されます −
Hello, Python!
スクリプト モード プログラミング
スクリプト パラメーターを使用してインタープリターを呼び出すと、スクリプトの実行が開始され、スクリプトが終了するまで続行されます。スクリプトが終了すると、インタープリターはアクティブではなくなります。
スクリプトで簡単な Python プログラムを書きましょう。 Python ファイルの拡張子は .py です .次のソース コードを test.py ファイルに入力します −
ライブデモprint "Hello, Python!"
Python インタープリターが PATH 変数に設定されていることを前提としています。さて、このプログラムを次のように実行してみてください −
$ python test.py
これにより、次の結果が生成されます-
Hello, Python!
Python スクリプトを実行する別の方法を試してみましょう。これが変更された test.py ファイルです −
ライブデモ#!/usr/bin/python print "Hello, Python!"
/usr/bin ディレクトリに Python インタープリターが用意されているものとします。さて、このプログラムを次のように実行してみてください −
$ chmod +x test.py # This is to make file executable $./test.py
これにより、次の結果が生成されます-
Hello, Python!
Python 識別子
Python 識別子は、変数、関数、クラス、モジュール、またはその他のオブジェクトを識別するために使用される名前です。識別子は、文字 A から Z または a から z またはアンダースコア (_) で始まり、その後に 0 個以上の文字、アンダースコア、および数字 (0 から 9) が続きます。
Python では、識別子内に @、$、% などの句読点を使用できません。 Python は、大文字と小文字を区別するプログラミング言語です。したがって、マンパワー そしてマンパワー Python では 2 つの異なる識別子です。
Python識別子の命名規則は次のとおりです-
-
クラス名は大文字で始まります。他のすべての識別子は小文字で始まります。
-
単一のアンダースコアで始まる識別子は、識別子が非公開であることを示します。
-
2 つの先頭のアンダースコアで始まる識別子は、強力なプライベート識別子であることを示します。
-
識別子が 2 つのアンダースコアで終わる場合、識別子は言語定義の特別な名前です。
予約語
次のリストは、Python キーワードを示しています。これらは予約語であり、定数、変数、またはその他の識別子名として使用することはできません。すべての Python キーワードには小文字のみが含まれます。
と | 幹部 | ない |
主張 | ついに | または |
休憩 | 用 | 合格 |
クラス | から | 印刷 |
続ける | グローバル | 上げる |
定義 | もし | 戻る |
デル | インポート | やってみる |
エリフ | で | その間 |
その他 | は | と |
例外 | ラムダ | 収量 |
線とインデント
Python には、クラスと関数の定義またはフロー制御のコード ブロックを示す中かっこがありません。コードのブロックは行インデントで示され、これは厳密に適用されます。
インデント内のスペースの数は可変ですが、ブロック内のすべてのステートメントは同じ量だけインデントする必要があります。たとえば-
if True: print "True" else: print "False"
ただし、次のブロックはエラーを生成します −
if True: print "Answer" print "True" else: print "Answer" print "False"
したがって、Python では、同じ数のスペースでインデントされたすべての連続行がブロックを形成します。次の例には、さまざまなステートメント ブロックがあります −
注意 − この時点でロジックを理解しようとしないでください。中括弧がない場合でも、さまざまなブロックを理解していることを確認してください。
#!/usr/bin/python import sys try: # open file stream file = open(file_name, "w") except IOError: print "There was an error writing to", file_name sys.exit() print "Enter '", file_finish, print "' When finished" while file_text != file_finish: file_text = raw_input("Enter text: ") if file_text == file_finish: # close the file file.close break file.write(file_text) file.write("\n") file.close() file_name = raw_input("Enter filename: ") if len(file_name) == 0: print "Next time please enter something" sys.exit() try: file = open(file_name, "r") except IOError: print "There was an error reading file" sys.exit() file_text = file.read() file.close() print file_text
複数行のステートメント
Python のステートメントは通常、改行で終わります。ただし、Python では、行継続文字 (\) を使用して、行が継続する必要があることを示すことができます。たとえば-
total = item_one + \ item_two + \ item_three
[]、{}、または () ブラケット内に含まれるステートメントでは、行継続文字を使用する必要はありません。たとえば-
days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']
Python での引用
Python は、同じタイプの引用符が文字列の開始と終了である限り、文字列リテラルを示すために単一 (')、二重 (")、および三重 (''' または """) の引用符を受け入れます。
三重引用符は、文字列を複数行にまたがるのに使用されます。たとえば、以下はすべて合法です −
word = 'word' sentence = "This is a sentence." paragraph = """This is a paragraph. It is made up of multiple lines and sentences."""
Python でのコメント
文字列リテラル内にないハッシュ記号 (#) は、コメントを開始します。 # の後から物理行の終わりまでのすべての文字はコメントの一部であり、Python インタープリターはそれらを無視します。
ライブデモ#!/usr/bin/python # First comment print "Hello, Python!" # second comment
これにより、次の結果が生成されます-
Hello, Python!
ステートメントまたは式の後の同じ行にコメントを入力できます −
name = "Madisetti" # This is again comment
次のように複数の行にコメントを付けることができます −
# This is a comment. # This is a comment, too. # This is a comment, too. # I said that already.
次の三重引用符で囲まれた文字列も Python インタープリターによって無視され、複数行のコメントとして使用できます:
''' This is a multiline comment. '''
空白行の使用
コメントが含まれている可能性がある空白のみを含む行は空白行と呼ばれ、Python はそれを完全に無視します。
対話型通訳セッションでは、複数行のステートメントを終了するために空の物理行を入力する必要があります。
ユーザーを待っています
プログラムの次の行は、「Enterキーを押して終了します」というプロンプトを表示し、ユーザーがアクションを実行するのを待ちます-
#!/usr/bin/python raw_input("\n\nPress the enter key to exit.")
ここで、「\n\n」は、実際の行を表示する前に 2 つの新しい行を作成するために使用されます。ユーザーがキーを押すと、プログラムは終了します。これは、ユーザーがアプリケーションを使い終わるまでコンソール ウィンドウを開いたままにしておくための優れたトリックです。
1 行に複数のステートメント
どちらのステートメントも新しいコード ブロックを開始しない場合、セミコロン (; ) を使用すると、1 行で複数のステートメントを使用できます。セミコロンを使用した切り取り例を次に示します −
import sys; x = 'foo'; sys.stdout.write(x + '\n')
スイートとしての複数のステートメント グループ
1 つのコード ブロックを構成する個々のステートメントのグループは、スイートと呼ばれます。 パイソンで。 if、while、def、class などの複合または複雑なステートメントには、ヘッダー行とスイートが必要です。
ヘッダー行は、(キーワードで) ステートメントを開始し、コロン ( :) で終了し、スイートを構成する 1 つ以上の行が続きます。たとえば-
if expression : suite elif expression : suite else : suite
コマンドライン引数
多くのプログラムを実行して、実行方法に関する基本的な情報を提供できます。 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. ]
さまざまなオプションを受け入れるようにスクリプトをプログラムすることもできます。コマンド ライン引数は高度なトピックであり、Python の概念の残りの部分を理解したら、少し後で学習する必要があります。
Python