目次
エンコーディング
デフォルトでは、Python 3ソースコードファイルはUTF-8でエンコードされ、すべての文字列はユニコード(unicode)文字列です。 もちろん、ソースコードファイルに別のエンコーディングを指定することもできます。
# -*- coding: cp-1252 -*-
上記の定義では、ソースファイルのWindows-1252文字セットで文字コードを使用できます。対応する適切な言語は、ブルガリア、ベラルーシ、マケドニア、ロシア、セルビアです。
識別子
- 最初の文字は、アルファベットの文字または下線_である必要があります。
- 識別子の他の部分は、文字、数字、および下線で構成されます。
- 識別子は大文字と小文字が区別されます。
Python 3では、変数名として日本語を使用でき、非ASCII識別子も使用できます。
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']
コメント
Pythonの1行のコメントは#で始まります。例は次のとおりです。
例(Python 3.0以降)
#!/usr/bin/python3
#最初のコメント
print ("Hello, Python!")
#2番目のコメント
上記のコードを実行すると、出力結果は次のようになります。
Hello, Python!
複数行のコメントでは、複数の#記号、および ”’ と “””を使用できます。
例(Python 3.0以降)
#!/usr/bin/python3
#最初のコメント
#2番目のコメント
'''
3番目のコメント
4番目のコメント
'''
"""
5番目のコメント
6番目のコメント
"""
print ("Hello, Python!")
上記のコードを実行すると、出力結果は次のようになります。
Hello, Python!
行とインデント
Pythonの最も特徴的な機能は、中括弧{}を使用せずに、インデントを使用してコードブロックを表すことです。
インデントされたスペースの数は変更できますが、同じコードブロック内のステートメントには、同じ数のインデントされたスペースが含まれている必要があります。 例は次のとおりです。
例(Python 3.0以降)
if True: print ("True") else: print ("False")
次のコードの最後の行のステートメントのインデントのスペースの数に一貫性がないため、ランタイムエラーが発生します。
例
if True:
print ("Answer")
print ("True")
else:
print ("Answer")
print ("False")#一貫性のないインデントはランタイムエラーを引き起こします。
上記のプログラムの一貫性のないインデントにより、実行後に次のようなエラーが表示されます。
File "test.py", line 6
print( "False")#一貫性のないインデントはランタイムエラーを引き起こします。
^
IndentationError: unindent does not match any outer indentation level
複数行のステートメント
Pythonは通常、1つのステートメントを1行で記述しますが、ステートメントが非常に長い場合は、バックスラッシュ(\)を使用して複数行のステートメントを実装できます。次に例を示します。
total = item_one + \
item_two + \
item_three
[]、{}、または()の複数行のステートメントでは、バックスラッシュ(\)を使用する必要はありません。次に例を示します。
total = ['item_one', 'item_two', 'item_three',
'item_four', 'item_five']
数値型
pythonには、整数、ブール(bool)、浮動小数点、複素数の4種類の数値があります。
- 1などのint(整数)は、一種類の整数型intがしかありません。python2にある长整型(Long)がありません。
- Trueなどのbool(ブール値)。
- 1.23、3E-2などのfloat(浮動小数点数)
- 1 + 2j、1.1 + 2.2jなどのcomplex (複素数)
文字列(String)
- Pythonでの単一引用符と二重引用符の使用はまったく同じです。
- 複数行の文字列を指定するには、三重引用符( “‘または” “”)を使用します。
- エスケープ:バックスラッシュ ‘\’
- バックスラッシュ’\’を使用してエスケープできます。rを使用すると、バックスラッシュをエスケープできなくなります。 たとえば、r “this is a line with \n”である場合、改行ではなく\nが表示されます。
- 文字通り文字列を連結すると、 “this” “is” “string”は自動的にthis is stringに変換されます。
- 文字列は+演算子で連結し、*演算子で繰り返すことができます。
- Pythonの文字列には、左から右に0で始まる方法と、右から左に-1で始まる方法の2つのインデックス方法があります。
- Pythonの文字列は変更できません。
- Pythonには個別の文字タイプはありません。文字は長さ1の文字列です。
- 文字列の構文形式は次のとおりです。変数[検索開始:検索終了:増分]
word = '文字列(string)'
sentence= "一つのステートメント。"
paragraph= "" "一つの段、
複数の行で構成できます """
例(Python 3.0以降)
#!/usr/bin/python3
str='ceodata.com'
print(str) # 文字列を出力します。
print(str[0:-1]) #最初から最後の2番目までのすべての文字を出力します。
print(str[0]) # 文字列の最初の文字を出力します。
print(str[2:5]) # 3番目から5番目までの文字を出力します。
print(str[2:]) #3番目からすべての文字を出力します。
print(str[1:5:2]) # 2番目から5番目まで1文字おきに出力します。
print(str * 2) #文字列を2回出力します。
print (str + 'こんにちは') #文字列を接続します。
print('------------------------------')
print('hello\nceodata.com') # スラッシュ(\)+ nエスケープ特殊文字を使用します。
print(r'hello\nceodata.com') #文字列の前にrを追加します。これは、元の文字列がエスケープしないことを意味します。
ここで、rはraw、つまりraw文字列を指し、次のように自動的にバックスラッシュをエスケープします。例えば:
>>> print( '\n')#空白行を出力します。
>>> print(r '\n')#\ nを出力します。
\n
>>>
上記の例の出力は
ceodata.com
ceodata.co
c
oda
odata.com
ed
ceodata.comceodata.com
ceodata.comこんにちは
------------------------------
hello
ceodata.com
hello\nceodata.com
空白行
空白行を使用して関数の間またはクラスのメソッドの間を区切り、新しいコードの始まりを示します。 クラスと関数のエントリの間も、空白行で区切ります。関数のエントリの先頭を強調するためです。
空白行はコードインデントとは異なります。空白行はPython構文の一部ではありません。 空白行は挿入しなくても、Pythonインタープリターはエラーなしで実行されます。 しかし、空白行の機能は、将来のコードのメンテナンまたは再構築を容易にするために、異なる機能または意味を持つコードの2つのセクションを分離することです。
注意:空白行もプログラムコードの一部です。
ユーザーの入力を待ちます
次のプログラムを実行し、Enterキーを押した後、ユーザーの入力を待ちます。
例(Python 3.0以降)
#!/usr/bin/python3 input("\n\nEnterキーを押して終了します。")
上記のコードでは、”\n\n”は、結果を出力する前に2つの新しい空白行を出力します。 ユーザーがEnterキーを押すと、プログラムは終了します。
同じ行に複数のステートメントを表示します
Pythonは、セミコロン(;)で区切って、同じ行で複数のステートメントを使用できます。以下は簡単な例です。
例(Python 3.0以降)
#!/usr/bin/python3 import sys; x = 'ceodata.com'; sys.stdout.write(x + '\n')
スクリプトを使用して上記のコードを実行すると、出力結果は次のようになります。
ceodata.com
対話(インタラクティブ)コマンドラインを使用して実行すると、出力結果は次のようになります。
>>> import sys; x = 'ceodata.com'; sys.stdout.write(x + '\n')
ceodata.com
12
ここでの12は文字数を表します。
複数のステートメントがコードグループを形成します
同じインデントを持つステートメントのグループは、コードブロックを構成します。これをコードグループと呼びます。
if、while、def、classなどの複合ステートメントの場合、最初の行はキーワードで始まり、コロン(:)で終わり、この行の後の1行または数行のコードがコードグループを構成します。
最初の行と次のコードグループをclauseと呼びます。
次の例のようになります。
if expression :
suite
elif expression :
suite
else :
suite
print出力
printのデフォルト出力は改行です。改行を行わないようにする場合は、変数の最後にend = “”:を追加する必要があります。
例(Python 3.0以降)
#!/usr/bin/python3
x="a"
y="b"
#改行出力
print( x )
print( y )
print('---------')
#改行出力なし
print( x, end=" " )
print( y, end=" " )
print()
上記の例の実行結果は次のとおりです。
a
b
---------
a b
importおよびfrom …import
対応するモジュールをインポートするには、pythonでimportまたはfrom … importを使用します。
モジュール全体(somemodule)を次の形式でインポートします。
import somemodule
モジュールから関数をインポートします。形式は次のとおりです。
from somemodule import somefunction
モジュールから複数の関数をインポートします。形式は次のとおりです。
from somemodule import firstfunc, secondfunc, thirdfunc
モジュール内のすべての関数をインポートします。形式は次のとおりです。
from somemodule import *
sysモジュールをインポートします。
import sys print('================Python import mode==========================')
print ('コマンドライン引数は:')
for i in sys.argv:print(i)
print ('\ n python path is ',sys.path)
sysモジュールのargv、pathメンバーをインポートします。
from sys import argv、path #特定のメンバーをインポートします。
print('================python from import===================================')
print ('path:',path) #パスメンバーがインポートされているため、ここで参照するときにsys.pathを追加する必要はありません。
コマンドライン引数
多くのプログラムは、いくつかの操作を実行していくつかの基本情報を表示できます。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を実行すると、コマンドラインから入力された引数を受け取ることができます。具体的な使用法については、Python3コマンドライン引数を参照してください。
コメントを残す