Python 構文に関するヒント

Python プログラミングの初心者ユーザ向けに、この学習パスで使用される Python コードの構文をすばやく理解するためのいくつかの基本的なヒントをここに示します。詳細な説明が必要な場合は、The Informal Introduction to Python (英語)を参照してください。

コメント

1 行のコメントは、シャープ記号(#)から始まり、改行文字で終了します。複数行のコメントは、3 つの一重引用符(または二重引用符)で囲みます。

someVariable = 4 # This assigns 4 to someVariable.

''' There are multiple lines 
in this comment. '''

""" 
Another
multiple
line
comment. 
""" 
注:3 つの一重引用符(または二重引用符)は、改行または通常の引用符が含まれる文字列を作成するためにも使用することができます。

文字列

文字列は、一重引用符または二重引用符のペアで囲むように記入することができ、「+」オペレータを使用して連結できます。 str() 関数は、入力した文字を文字列表現に変換することを試みます。

myString1 = 'some' + ' string'
myString2 = "another " + "string"

print 'four: ' + str(4) 
# 'four: 4'

リスト

リストは角括弧のペアで示され、ダイナミック配列と等価です。 リスト内の開始インデックスは 0 です。 リストに追加するには、append() 関数を使用します。 Len() 関数は、リストの長さを返します。

myList = []
myList.append('apples')
myList.append('oranges')

print myList[1] 
# 'oranges'

print str( len( myList ) ) 
# '2'

ディクショナリ

ディクショナリは中括弧のペアで示され、キー値のペアが含まれています(ここで、キーは文字列と同様に Hashable オブジェクト)。

myDictionary = {}
myDictionary['myKey'] = 'myValue'
myDictionary['myOtherKey'] = 17

print str( myDictionary['myOtherKey'] ) 
# '17'

print str( myDictionary ) 
# '{'myKey': 'myValue', 'myOtherKey': 17}'

タプル

タプルは固定シーケンスで、括弧のペアによって表されます。タプル内の要素は、そのインデックスに応じて参照されます。タプルの先頭要素のインデックスは、ゼロ [0] になります。

myTuple = ('pants', 'shirt', 1987)

print str( myTuple[1] )
# 'shirt'

print str( myTuple )
# ('pants', 'shirt', 1987)

セット(Sets)

セットは一意の(hashable)オブジェクトの不規則なコレクションです。セットは中括弧で示されます。

mySet = {"cat", "dog", "lizard", "emu"}

# Print set.
print(mySet)
# set(['emu', 'lizard', 'dog', 'cat'])

print(len(mySet))
# 4

# Use in-keyword.
if "lizard" in mySet:
    print("Lizard exists")
# Lizard exists

クラス、関数、およびインデント

クラスや関数、あるいは If/Else 条件やループなどのステートメント本体を識別するために、一貫したインデントを使用してください。下記のサンプル コードでは、4 つのスペース(' ')文字によって 1 つのインデントのレベルを示しています。 クラスはキーワード 'class' を使用して宣言され、メソッドおよびグローバル関数はキーワード 'def' を使用して宣言されます。クラス メソッドの最初のパラメータ(通常、'self' という名前)は現在のインスタンスを参照することに注意してください。

class myClass:
    
    def __init__(self):
        ''' 
        __init__ identifies the class constructor. 
        '''
        pass # The 'pass' keyword indicates that we do nothing.

    def doIt(self, myParameter):
        '''
        This is a method which we have defined as having one
        parameter whose name is myParameter.
        '''
        for i in range(0, 9): # This will loop 10 times.
            if (i == 0):
                # Print 'Hello World!' on the first iteration
                print 'Hello World!'
            else:
                # Print a string representation of myParameter the rest of the time.
                print str( myParameter )

# This code will be executed once the myClass definition is read.
myClassInstance = myClass()
myClassInstance.doIt( 'some string' )

例外処理

従来の try/catch/finally 例外処理は、'try' および 'except' キーワード シーケンスを使用して実行されます。'else' および 'finally' キーワードは任意で使用できます。キーワード 'else' に続くコードは、キーワード 'try' に続くコードが例外なく実行された場合に実行されます。 キーワード 'finally' に続くコードは、例外の発生にかかわらず実行されます。キーワード 'raise'を使用して、独自の例外を発生させることができます。

# This code sample can be found at: http://docs.python.org/tutorial/errors.html
def divide(x, y):
    try:
        result = x / y
    except ZeroDivisionError:
        print "division by zero!"
    else:
        print "result is" + result
    finally:
        print "executing finally clause"