Python独学ガイド---基礎編(一)基本文法規則

7004 ワード

基礎編の最初の3節ではpythonの構文規則について説明します.
  • いくつかの基本構文規則
  • 変数付与
  • 識別子
  • Pythonを学ぶ過程で、これらの基礎的な文法規則は常に運用されており、必ず心に刻まなければならない.
    1.基本的な文法規則
  • 注記(#)
  • 続行()
  • インデント
  • 同じ行に複数の文を書きます(;)

  • 1.1コメント
    注釈はいずれの言語においても重要であり、特にチームワークの際、簡潔で明瞭な注釈は他人がコードを理解するのに役立つ鍵である.
    1.1行コメント
    井戸番号(#)は、単一の注釈の記号であり、プログラムで#を使用すると、右側の内容が注釈として扱われ、プログラムとして実行されません.pythonプログラムでは、単行コメントが一般的で、いくつかの重要な説明機能が必要な文の後に追加されることがあります.
    res =  2 * 3  #   2 * 3   ,       res
    

    1行コメントは、同じ機能を完了するコード、またはコードブロックの前にもよく表示されます.
    #   2 * 3   ,   
    def cacu:
        print (2 * 3)	
    

    また、コード機能の解釈に用いるものではなく、一般的に1つに現れる特殊な注釈もある.pyファイルの先頭には、次のようなものがあります.
    #coding=utf-8
    

    コードに中国語が含まれている場合は、この注釈が必要です.そうしないと、プログラムの実行中にエラーが発生します.この注釈の原理は符号化の問題に関連しています.後の章で説明します.
    2.複数行コメント
    その名の通り、複数行の注釈は一般的に注釈の内容が多く、複数行を占める場合に使用される.複数行のコメントは、次のような三重引用符で表されます.
    ‘’‘
         ,     
         ,     
         ,     
    ’‘’
    
    “”“
         ,     
         ,     
         ,     
    ”“”
    
    

    良いPythonコードスタイルを追求する場合、重要なPythonファイル(またはモジュール)の先頭に、このモジュールの機能、実現のポイント、可能なエラーなど、簡単な説明ドキュメントを書く必要があります.例えば、典型的なPythonモジュールのレイアウトは、
    #!/usr/bin/env python
    # coding: utf-8
    
    '''
        The approach taken is explained below. I decided to do it simply.
        Initially I was considering parsing the data into some sort of
        structure and then generating an appropriate README. I am still
        considering doing it - but for now this should work. The only issue
        I see is that it only sorts the entries at the lowest level, and that
      
    '''
    
    #      
    import os
    import time
    
    #    ,    ,   
    ……
    #   
    ……
    

    ちなみに、三引用符はPythonでもう一つの役割を果たしています.これは、複数行の文字列を表すために使用されます.
    str='''Line 1
    Line 2
    Line 3'''   #    str='Line 1
    Line 2
    Line 3'

    1.2継続
    Pythonでは、1つの文が必ず同じ行に書かれています.1つの文が長すぎる場合は、を複数行に分割できます.
    # check conditions
    if (a_lengthy_condition == 1 ) and \
    (another_lengthy_condition == 2):
        move()
    
    

    のもう一つの重要な使用は、エスケープ文字であり、後の文字列の章で説明します.
    1.3インデント
    C/C++言語では、一般的に{......}を使用してコードブロックを分割します.たとえば、次のようにします.
    if (condition1) {
        cout << "Level 1" << endl;
        if (condition2) {
            cout << "Level 2" << endl;
        }
    }
    

    インデントを使用していなくても、カッコが存在する限り、以下のコードは上記のコードと機能的に何の違いもありません.もちろん、以下のようなインデントのないスタイルは絶対に提唱されません.
    if (condition1) {
    cout << "Level 1" << endl;
    if (condition2) {
    cout << "Level 2" << endl;
    }
    }
    

    Pythonは括弧ではなくインデントでコードブロックを分割し、コードの階層関係は同じ深さのスペースやタブで表現されています.
    if condition1:
        print "Level 1" 
        if condition2:
            print "Level 2"
    

    明らかに、Pythonはカッコを使用しないため、異なる階層のコードブロックを区別するために、異なる深さのインデントを厳格に使用しなければならない.そうしないと、プログラムが間違ったり、元の機能を変更したりする可能性がある.また、1回にいくつかのスペースをインデントする問題に注意してください.
    コアスタイル:4つのスペース幅をインデントし、タブを使用することを避けます.コードブロックの境界として空白文字を初めて使用した人にとって、最初の問題は、インデントの幅がどのくらい適切かです.2つは少なすぎて、6~8つは多すぎるので、4つのスペース幅を使うことをお勧めします.説明する必要があるのは、異なるテキストエディタでタブが表す空白の幅が異なり、プラットフォームにまたがってコードを適用したり、異なるエディタで読み書きされたりする場合は、タブを使用しないことをお勧めします.スペースまたはタブを使用する2つのスタイルは、Pythonの創始者Guido van Rossumのサポートを受け、Pythonコードスタイルガイドドキュメントに収録されています.–『Pythonコアプログラミング』
    1.4同じ行に複数の文を書く
    セミコロン(;)複数のPython文を同じ行に表示できます.
    import os; a = 1 * 1; b = 1 + 1
    

    このスタイルのコードの可読性は低いため、一般的には同業者が複数の文を書くことは提唱されていない.