Python3教學
Python3引入什麼新的東西?
Python3環境安裝設置
Python3基礎語法
Python3變量類型
Python算術運算符實例
Python3比較運算符實例
Python3賦值運算符實例
Python3位運算符實例
Python3邏輯運算符實例
Python3成員運算符實例
Python3標識運算符實例
Python3運算符優先級示例
Python3基本運算符
Python3 if語句
Python3 if...elseif...else語句
Python3嵌套if語句
Python3決策
Python3 while循環語句
Python3 for循環語句
Python3嵌套循環
Python3 break語句
Python3 continue語句
Python3 pass語句
Python3循環
Python3 abs()函數
Python3 ceil()函數
Python3 exp()函數
Python3 fabs()函數
Python3 floor()函數
Python3 log()函數
Python3 log10()函數
Python3 max()函數
Python3 min()函數
Python3 modf()函數
Python3 pow()函數
Python3 round()函數
Python3 sqrt()函數
Python3 choice()函數
Python3 randrange()函數
Python3 random()函數
Python3 seed()函數
Python3 shuffle()函數
Python3 uniform()函數
Python3 acos()函數
Python3 asin()函數
Python3 atan()函數
Python3 atan2()函數
Python3 cos()函數
Python3 hypot()函數
Python3 sin()函數
Python3 tan()函數
Python3 degrees()函數
Python3 radians()函數
Python3數字
Python3 string.capitalize()方法
Python3 string.center()方法
Python3 string.count()方法
Python3 string.decode()方法
Python3 string.endswith()方法
Python3 string.expandtabs()方法
Python3 string.encode()方法
Python3 string.find()方法
Python3 string.index()方法
Python3 string.isalnum()方法
Python3 string.isalpha()方法
Python3 string.isdigit()方法
Python3 string.tolower()方法
Python3 string.isnumeric()方法
Python3 string.isspace()方法
Python3 string.istitle()方法
Python3 string.isupper()方法
Python3 string.join()方法
Python3 string.len()方法
Python3 string.ljust()方法
Python3 string.lower()方法
Python3 string.lstrip()方法
Python3 string.maketrans()方法
Python3 string.max()方法
Python3 string.min()方法
Python3 string.replace()方法
Python3 string.rfind()方法
Python3 string.rindex()方法
Python3 string.rjust()方法
Python3 string.rstrip()方法
Python3 string.split()方法
Python3 string.splitlines()方法
Python3 string.startswith()方法
Python3 string.strip()方法
Python3 string.swapcase()方法
Python3 string.title()方法
Python3 string.translate()方法
Python3 string.upper()方法
Python3 string.zfill()方法
Python3 string.isdecimal()方法
Python3字符串
Python3 list.cmp()方法
Python3 list.len()方法
Python3 list.max()方法
Python3 list.min()方法
Python3 list.list()方法
Python3 list.append()方法
Python3 list.count()方法
Python3 list.extend()方法
Python3 list.index()方法
Python3 list.insert()方法
Python3 list.pop()方法
Python3 list.remove()方法
Python3 list.reverse()方法
Python3 list.sort()方法
Python3列表
Python3 tuple.cmp()方法
Python3 tuple.len()方法
Python3 tuple.max()方法
Python3 tuple.min()方法
Python3 tuple.tuple()方法
Python3元組
Python3 dictionary.cmp()方法
Python3 dictionary.len()方法
Python3 dictionary.str()方法
Python3 dictionary.type()方法
Python3 dictionary.clear()方法
Python3 dictionary.copy()方法
Python3 dictionary.fromkeys()方法
Python3 dictionary.get()方法
Python3 dictionary.has_key()方法
Python3 dictionary.items()方法
Python3 dictionary.keys()方法
Python3 dictionary.setdefault()方法
Python3 dictionary.update()方法
Python3 dictionary.values()方法
Python3字典
Python3 time.altzone()方法
Python3 time.asctime()方法
Python3 time.clock()方法
Python3 time.ctime()方法
Python3 time.gmtime()方法
Python3 time.localtime()方法
Python3 time.mktime()方法
Python3 time.sleep()方法
Python3 time.strftime()方法
Python3 time.time()方法
Python3 time.tzset()方法
Python3日期和時間
Python3函數
Python3模塊
Python3 file.close()方法
Python3 file.tell()方法
Python3 file.truncate()方法
Python3 file.write()方法
Python3 file.writelines()方法
Python3 file.flush()方法
Python3 file.fileno()方法
Python3 file.isatty()方法
Python3 file.next()方法
Python3 file.read()方法
Python3 file.readline()方法
Python3 file.readlines()方法
Python3 file.seek()方法
Python3文件方法
Python3 os.access()方法
Python3 os.chdir()方法
Python3 os.chflags()方法
Python3 os.chmod()方法
Python3 os.chown()方法
Python3 os.chroot()方法
Python3 os.close()方法
Python3 os.closerange()方法
Python3 os.dup()方法
Python3 os.dup2()方法
Python3 os.fchdir()方法
Python3 os.fchmod()方法
Python3 os.fchown()方法
Python3 os.fdatasync()方法
Python3 os.fopen()方法
Python3 os.fpathconf()方法
Python3 os.fstat()方法
Python3 os.fstatvfs()方法
Python3 os.fsync()方法
Python3 os.ftruncate()方法
Python3 os.getcwd()方法
Python3 os.getcwdu()方法
Python3 os.isatty()方法
Python3 os.lchflags()方法
Python3 os.lchmod()方法
Python3 os.lchown()方法
Python3 os.link()方法
Python3 os.listdir()方法
Python3 os.lseek()方法
Python3 os.lstat()方法
Python3 os.major()方法
Python3 os.makedev()方法
Python3 os.makedirs()方法
Python3 os.minor()方法
Python3 os.mkdir()方法
Python3 os.mkfifo()方法
Python3 os.mknod()方法
Python3 os.open()方法
Python3 os.openpty()方法
Python3 os.pathconf()方法
Python3 os.pipe()方法
Python3 os.popen()方法
Python3 os.read()方法
Python3 os.readlink()方法
Python3 os.remove()方法
Python3 os.removedirs()方法
Python3 os.rename()方法
Python3 os.renames()方法
Python3 os.rmdir()方法
Python3 os.stat()方法
Python3 os.stat_float_times()方法
Python3 os.statvfs()方法
Python3 os.symlink()方法
Python3 os.tcgetpgrp()方法
Python3 os.tcsetpgrp()方法
Python3 os.tempnam()方法
Python3 os.tmpfile()方法
Python3 os.tmpnam()方法
Python3 os.ttyname()方法
Python3 os.unlink()方法
Python3 os.utime()方法
Python3 os.walk()方法
Python3 os.write()方法
Python3 os文件目錄的方法
Python3文件操作
Python3標準異常
Python3斷言
Python3異常處理

Python3基礎語法

Python語言有許多與Perl,C和Java的相似之處。不過,語言之間也有一些明顯的差異。

第一個Python程序


讓我們在不同的編程模式下執行程序。

交互模式編程

調用解釋器,不用通過一個腳本文件作爲參數,如下提示 -

$ python
Python 3.3.2 (default, Dec 10 2013, 11:35:01)
[GCC 4.6.3] on Linux
Type "help", "copyright", "credits", or "license" for more information.

在 Windows 系統上:
C:\Users\Administrator>python
Python 3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:54:25) [MSC v.1900 64 bit (AM
D64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

在 Python 提示符下編寫下面的文本代碼,然後按Enter:

>>> print ("Hello, Python!") 

如果你使用的是 Python(Python2.X)的舊版本,在print 函數使用括號是一個可選項。這將產生以下的結果:

Hello, Python!

腳本編程模式

解釋器調用一個腳本參數開始執行腳本,並一直持續到腳本完成。當腳本完成,解釋器活動失效。

讓我們在腳本中寫一個簡單的 Python 程序。Python文件使用 .py 擴展名。 創建一個文件 test.py 並寫入以下代碼:

print ("Hello, Python!") 

假設你已經在 PATH 變量中設置了 Python 解釋器路徑。 現在,試着如下運行這個程序 -

在Linux上執行

$ python test.py

這將產生以下的結果:

Hello, Python!

在 Windows 上執行

C:\Python3>Python test.py

這將產生以下的結果:

Hello, Python!

讓我們嘗試使用另一種方式在Linux中執行 Python 腳本。下面是修改 test.py 文件 -

#!/usr/bin/python3

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〜9)。

Python標識符範圍內的不容許有如:@, $ 和 % 符號。Python是一種區分大小寫的編程語言。因此,Manpower 和 manpower 在Python中是兩種不同的標識符。

下面是 Python 標識符命名的約定 -

  • 類名稱使用大寫字母。所有其它標識符開始使用小寫字母。

  • 開頭使用一個下劃線的標識符表示該標識符是私有的。

  • 開始以兩個前導下劃線的標識符表示強烈私有的標識符。

  • 如果標識符使用兩個下劃線作爲結束時,所述標識符是語言定義的特殊的名字。

保留字


Python 的關鍵字如下列出。這些是保留字,不能把它們作爲常量或變量或任何其他標識符名稱。 所有Python的關鍵字僅包含小寫字母。

and

exec

Not

as

finally

or

assert

for

pass

break

from

print

class

global

raise

continue

if

return

def

import

try

del

in

while

elif

is

with

else

lambda

yield

except

行和縮進


Python不使用大括號({})來表示的代碼塊類和函數定義或流程控制。代碼塊由行縮進,這是嚴格執行表示。

在縮進位的數目是可變的,但該塊內的所有語句的縮進量必須相同。 例如 -

if True:
print ("True")
else:
print ("False")

但是,以下塊產生一個錯誤 -

if True:
print ("Answer")
print ("True")
else:
print "(Answer")
print ("False") 

因此,Python中所有連續不換行,同樣數量的空格縮進將形成一個塊。下面的例子有各種各樣的語句塊 -

注意:不要試圖理解其中的邏輯在這個時候。只要你明白,即使他們不使用括號在各個模塊。

#!/usr/bin/python3

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 = 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/python3

First comment

print ("Hello, Python!") # second comment

這將產生以下結果 -

Hello, Python!

你可以聲明或表達式之後的同一行寫上註釋 -

name = "Madisetti" # This is again comment

Python沒有多行註釋功能。所以你應該單行註釋每一行如下-

# This is a comment.

This is a comment, too.

This is a comment, too.

I said that already.

使用空行


僅包含空格,可能帶有註釋行,如果是空行Python會完全忽略它。

在交互式解釋器會話,則必須輸入一個空的物理行來終止多行語句。

等待用戶


程序的下面一行顯示提示聲明說:「按回車鍵退出」,並等待用戶操作 -

#!/usr/bin/python3

input("\n\nPress the enter key to exit.") 

在這裏,「\n\n」是用來顯示實際行之前創建的兩條新行。一旦用戶按下鍵時,程序就結束。 這是一個很好的技巧,以保持控制檯窗口打開,直到用戶來指定終止應用程序運行。

在一行多條語句


分號(;)允許給在單行有多條語句,而不管語句開始一個新的代碼塊。下面是使用分號的示例-

import sys; x = 'foo'; sys.stdout.write(x + '\n')

多重聲明組爲套件


一組單獨的語句,它們使單一代碼塊化在Python稱爲套件。複雜的語句,如 if, while, def, 和 class 需要一個標頭行和一個套件。

頭部行開始的語句(以關鍵字),並用冒號終止(:),後面跟一行或多行組成套件。例如 -

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概念後,其餘部分的內容我們將在接下來的章節中學習。