1. 程式人生 > >Python 教程3 基礎語法

Python 教程3 基礎語法

本文整理自菜鳥廖雪峰教程,大家選擇教程時,一定要看好具體的Python版本

本文講解Python3的語法

(網上搜索教程時,只搜尋Python教程,會出現Python2.x的教程。python2語法比較舊用的人較少,而且與python3語法有區別,你需要搜尋Python3教程)

識別符號

  • 第一個字元必須是字母表中字母或下劃線 _ 。
  • 識別符號的其他的部分由字母、數字和下劃線組成。
  • 識別符號區分大小寫。

例:print 'hello' 中print就是識別符號

python保留字

保留字即關鍵字,python保留使用,建立變數時不可使用

'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與其他語言最大的區別就是,Python的程式碼塊不使用大括號({})來控制類

python要求格式正確:python是由縮排空白進行語句分割 

if True:
    print "True" #前面縮排
else:
    print "False" #前面縮排

以下是錯誤輸出

if True:
    print("True")
  print("sss") #這個沒有對齊
else:
    print("False")
######正確方式
if True:
    print("True")
    print("sss") #對齊
else:
    print("False")

出現會有報錯,在開發時需要自己閱讀報錯原因,並進行解決

File "G:/Python_Projects/ChineseCode.py", line 9
    print("sss")
               ^
IndentationError: unindent does not match any outer indentation level

Process finished with exit code 1

縮排錯誤:縮排不匹配任何外部縮排級別,改為與上一行程式碼一致即可。

總結:在Python的程式碼塊中必須使用相同數目的行首縮排空格數。

多行語句

Python語句中一般以新行作為為語句的結束符。

但是我們可以使用斜槓( \)將一行的語句分為多行顯示,如下所示:

 total = item_one + \ 
        item_two + \
        item_three  

語句中包含[], {} 或 () 括號就不需要使用多行連線符。如:

 days = ['Monday', 'Tuesday', 'Wednesday',
        'Thursday', 'Friday']

 

註釋

Python中單行註釋以 # 開頭,例項如下:

# 第一個註釋
print ("Hello, Python!") # 第二個註釋

python 中多行註釋使用三個單引號(''')或三個雙引號(""")。

'''
多行註釋,單引號。
多行註釋
多行註釋
'''

"""
多行註釋,使用雙引號。
多行註釋
多行註釋
"""

Python 引號(Python 字串)

Python 使用單引號(' ),雙引號(" ),三引號(''' """) 來表示字串,引號的開始與結束必須是相同型別的

word = '字串'
sentence = "這是一個句子。"
paragraph = """這是一個段落,
可以由多行組成"""

例項:

str='Python'
#跟著寫一遍即可,只要先掌握 + 為連線字串即可,其他語句後續在變數型別中會講
print(str)                 # 輸出字串
print(str[0:-1])           # 輸出第一個~倒數第二個的所有字元
print(str[0])              # 輸出字串第一個字元
print(str[2:5])            # 輸出從第三個開始到第五個的字元
print(str[2:])             # 輸出從第三個開始的後的所有字元
print(str * 2)             # 輸出字串兩次
print(str + '你好')        # 連線字串
 
print('------------------------------')
 
print('hello\nPython')      # 使用反斜槓(\)+n轉義特殊字元
print(r'hello\nPython')     # 在字串前面新增一個 r,表示原始字串,不會發生轉義

輸出為:

Python
Pytho
P
tho
thon
PythonPython
Python你好
------------------------------
hello
Python
hello\nPython

Process finished with exit code 0

Python空行

函式之間或類的方法之間用空行分隔,表示一段新的程式碼的開始。類和函式入口之間也用一行空行分隔,以突出函式入口的開始。空行與程式碼縮排不同,空行並不是Python語法的一部分。書寫時不插入空行,Python直譯器執行也不會出錯。但是空行的作用在於分隔兩段不同功能或含義的程式碼,便於日後程式碼的維護或重構。

記住:空行也是程式程式碼的一部分。

Print 輸出

print 預設輸出是換行的,如果要實現不換行需要在變數末尾加上逗號 , 

x="a"
y="b"
# 換行輸出
print x
print y

print '---------'
# 不換行輸出
print x,
print y,

# 不換行輸出
print x,y

以上例項執行結果如下:

a
b
---------
a b a b

 

多個語句構成程式碼組

縮排相同的一組語句構成一個程式碼塊,我們稱之程式碼組。

像if、while、def和class這樣的複合語句,首行以關鍵字開始,以冒號( : )結束,該行之後的一行或多行程式碼構成程式碼組。

我們將首行及後面的程式碼組稱為一個子句(clause)。

瞭解概念即可,具體if while 等用法在python語句部分講解

如下例項:

#別跟著複製,此段程式碼無意義,無法執行的
if 條件1 : 
   執行的語句1
elif 條件2:  
   執行的語句2  
else :  
   ...其他可能執行的表示式

 

命令列引數

很多程式可以執行一些操作來檢視一些基本資訊,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 時,可以接收命令列輸入的引數

import 與 from...import

在 python 用 import 或者 from...import 來匯入相應的模組。

將整個模組(somemodule)匯入,格式為: import somemodule

從某個模組中匯入某個函式,格式為: from somemodule import somefunction

從某個模組中匯入多個函式,格式為: from somemodule import firstfunc, secondfunc, thirdfunc

將某個模組中的全部函式匯入,格式為: from somemodule import *

記住 import 和 from import命令即可,具體含義在函式部分會講

匯入 sys 模組

import sys
print('================Python import mode==========================');
print ('命令列引數為:')
for i in sys.argv:
    print (i)
print ('\n python 路徑為',sys.path)

 匯入sys模組的argv,path成員

from sys import argv,path  #  匯入特定的成員
 
print('================python from import===================================')
print('path:',path) # 因為已經匯入path成員,所以此處引用時不需要加sys.path

 下一篇會講到Python3的基本資料型別,先寫這些