您好,登錄后才能下訂單哦!
Python是一種解釋型、面向對象、動態數據類型的高級程序設計語言。在命令行窗口輸入"python" 命令來查看本地是否已經安裝Python以及Python的安裝版本
Python下載
Python官網:
http://www.python.org/
Python文檔下載地址:
www.python.org/doc/
Python 縮進與空行
Python中不使用大括號,而是使用縮進來組織代碼塊,縮進的空格數沒有嚴格要求,但是同一個代碼塊語句必須有相同的縮進,這個必須嚴格執行,縮進相同的語句被認為是處于同一個代碼塊中。
函數之間或類的方法之間用空行分隔,表示一段新的代碼的開始。類和函數入口之間也用一行空行分隔,以突出函數入口的開始。
空行與代碼縮進不同,空行并不是Python語法的一部分。書寫時不插入空行,Python解釋器運行也不會出錯。空行的作用在于分隔兩段不同功能或含義的代碼,便于日后代碼的維護或重構。
在Python中,一般來說一條語句占用一行,語句結束一般不需要使用分號“;”,若要將多條語句寫在一行,則需用“;”將語句分開。
當一行語句很長時,可以用 “\” 符號折行顯示代碼。如下所示:
total = num1 + \
num2 +\
num3
另外,語句中包含[], {} 或 () 括號就不需要使用多行連接符。如下實例:
days = ['Monday','Tuesday', 'Wednesday',
'Thursday','Friday']
Python 中文編碼
代碼中如果包含中文,且在Python 文件中未指定編碼,就有可能會碰到中文編碼問題,在執行過程會出現報錯:
File "C:\Users\wyb\workspace\PythonExercise\src\exercise1.py", line 2
SyntaxError: Non-UTF-8 code starting with '\xc5' in file C:\Users\wyb\workspace\PythonExercise\src\exercise1.py on line 2, but no encoding declared; see
http://python.org/dev/peps/pep-0263/ for details
解決方法為只要在文件開頭加入 #-*- coding: UTF-8 -*- 或者# coding=utf-8 就行了。
Python 注釋
注釋 以”#”號開頭的內容為單行注釋,python解釋器會忽略該行的內容。
多行注釋 用一對三個引號('''…''')進行注釋。
Python 標識符
1、 python命名規則與Java基本一樣,標識符由字母、數字、下劃線組成,但不能以數字開頭,區分大小寫。
2、 python中以下劃線開頭的標識符是有特殊意義的。以單下劃線開頭(_foo)的代表不能直接訪問的類屬性,需通過類提供的接口進行訪問,不能用‘from xxx import *’而導入;以雙下劃線開頭的(__foo)代表類的私有成員;以雙下劃線開頭和結尾的(__foo__)代表python里特殊方法專用的標識,如__init__()代表類的構造函數。因為下劃線對解釋器有特殊的意義,而且是內建標識符所使用的符號,所以一般避免用下劃線作為變量名的開始。
Python 保留字
and
exec
not
assert
finally
or
break
for
pass
class
from
continue
global
raise
def
if
return
del
import
try
elif
in
while
else
is
with
except
lambda
yield
Python 數據類型
Python 程序中 “一切數據是對象,一切命名是引用”,包括自定義對象和基本數據類型。 Python在使用變量之前無須定義它的類型,但是必須聲明以及初始化該變量。
1、 數值類型(Numbers)
Python擁有四種數值類型:整型(int),長整型(long),浮點類型(float)以及復數類型(complex)。
num1 = 20 #int型
num2 = 11213L #long型
num3 = 15.20 #float型
num4 = 70.2-E12 #float型
num5 = 3.14j #complex型
復數由實數部分和虛數部分構成,Python可以用a + bj,或者complex(a,b)表示, 復數的實部a和虛部b都是浮點型
2、 字符串類型(String)
Python擁有兩種字符串類型:標準字符串(str)是單字節字符序列,Unicode字符串(unicode)是雙字節字符序列。在Python中定義一個標準字符串(str)可以使用單引號、雙引號甚至三引號(多行)。在Python中定義一個Unicode字符串,需要在引號前面加上一個字符u。另外,Python沒有字符(char)類型,再短的文本也是字符串。
str1 = 'Hello"\n'
str2 = "Hello'\r"
str3 = """
Hello,
I love Python
"""
str4 = u'你好,Python'
python的字串列表有2種取值順序:
從左到右索引默認0開始的,最大范圍是字符串長度少1
從右到左索引默認-1開始的,最大范圍是字符串開頭
可以用到變量[頭下標:尾下標],來截取相應的字符串,其中下標是從0開始算起,可以是正數或負數,下標可以為空表示取到頭或尾。比如:
s = 'I love study'
s[2:6]的結果是love。(包括下邊界,不包括上邊界)
加號’+‘是字符串的連接運算符,星號’*‘表示重復操作
str1 = 'I Love "Python"'
print (str1 * 3)
print (str1[2:6])
print (str1 + "aaa")
輸出:
I Love "Python"I Love "Python"I Love "Python"
Love
I Love "Python"aaa
3、列表(List)
列表用[ ]標識,支持數字,字符串甚至可以包含列表,是python最通用的復合數據類型。
list = [ 'aa', 'bb', 11 ]
列表中也可用變量[頭下標:尾下標]來截取相應的列表,從左到右索引默認0開始的,從右到左索引默認-1開始,下標可以為空表示取到頭或尾。
加號’+‘是列表連接運算符,星號’*‘是重復操作。
print ( list[1:2] ) #輸出第二個元素
print ( list[1] ) #輸出第二個元素
print ( list[1: ] ) #輸出第二個開始至末尾的元素
print ( list *2 ) #輸出列表兩次
print ( list 1+ list2 ) #輸出組合的列表
4、元祖(Tuple)
元組是另一個數據類型,類似于List(列表)。元組用"()"標識。內部元素用逗號隔開。但是元素不能二次賦值,相當于只讀列表。
list = [ 'aa', 10, 'python' ]
tuple = [ 'aa', 10, 'python' ]
list[1] = 20 #合法,list中元素允許更新
tuple[1] = 20 #不合法,tuple中元素不允許更新
5、字典(Dictionary)
字典與列表不同。列表是有序的對象結合,字典是無序的對象集合。兩者之間的區別在于:字典當中的元素是通過鍵來存取的,而不是通過偏移存取。
字典用"{ }"標識,由索引(key)和它對應的值(value)組成。
dict = { 'num1':0123,'num2': 2345,'num3': 4567 }
print (dict['num1'])
print (dict)
print (dict.values())
print (dict.keys())
輸出結果為:
0123
{'num3': 4567, 'num2': 2345, 'num1': 0123}
dict_values([4567, 2345, 0123])
dict_keys(['num3', 'num2', 'num1'])
Python 運算符
算術運算符:+、-、*、/、%、**(冪)、//(整除)
2 ** 4 為2的4次方,16
9 // 2得整除值4 9.0 // 2.0 得4.0
比較運算符:==、!=、<>(同!=)、>、<、<=、>=
賦值運算符:=、+=、-=、*=、/=、%=、**=、//=
Python允許同時為多個變量賦值,如:a = b = c = 0 此實例創建了一個整型對象,值為0,三個變量指向相同的內存空間
a, b, c = 0,1, 2 此實例創建了3個整型對象
位運算符: &按位與運算符
|按位或運算符
^按位異或運算符
~按位取反運算符
<<左移動運算符
>>右移動運算符
邏輯運算符:and布爾"與" - 如果x為False,x and y返回False,否則它返回y的計算值。
or布爾"或" - 如果x是True,它返回True,否則它返回y的計算值。
not布爾"非" - 如果x為True,返回False。如果x為False,它返回True。
成員運算符:in 如果在指定的序列中找到值返回True,否則返回False。
not in如果在指定的序列中沒有找到值返回True,否則返回False。
身份運算符:is是判斷兩個標識符是不是引用自一個對象x is y, 如果 id(x) 等于 id(y) , is 返回結果 1
is not是判斷兩個標識符是不是引用自不同對象x is not y, 如果 id(x) 不等于 id(y). is not 返回結果 1
Python 運算符優先級
以下表格中運算符優先級由高到低:
運算符 描述
** 指數 (最高優先級)
~ + - 按位翻轉, 一元加號和減號 (最后兩個的方法名為 +@ 和 -@)
* / % // 乘,除,取模和取整除
+ - 加法減法
>> << 右移,左移運算符
& 位 'AND'
^ | 位運算符
<= < > >= 比較運算符
<> == != 等于運算符
= %= /= //= -= += *= **= 賦值運算符
is is not 身份運算符
in not in 成員運算符
not or and 邏輯運算符
Python 條件語句
if語句 :
if 判斷條件1:
執行語句……
elif 判斷條件2:
執行語句.......
else:
執行語句……
注意:
1、Python程序語言指定任何非0和非空(null)值為true,0 或者 null為false。
2、執行語句可以多行,以縮進來區分表示同一范圍
3、if 語句的判斷條件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)來表示其關系。
4、由于 python 并不支持 switch 語句,所以多個條件判斷,只能用 elif 來實現,如果判斷需要多個條件需同時判斷時,可以使用 or (或),表示兩個條件有一個成立時判斷條件成功;使用 and (與)時,表示只有兩個條件同時成立的情況下,判斷條件才成功。
Python 循環語句
循環語句允許我們執行一個語句或語句組多次,Python提供了for循環和while循環(在Python中沒有do..while循環)。
while語句即在某個條件下,循環執行某段程序,以處理需要重復處理的相同任務,形式為:
while 判斷條件:
執行語句......
判斷條件可以是任意表達式,任何非零非空的值均為true。當判斷條件為false時,循環結束。
控制語句 描述:
break 語句 在語句塊執行過程中終止循環,并且跳出整個循環
continue 語句 在語句塊執行過程中終止當前循環,跳出該次循環,即不再執行當前循環的 剩余語句,執行下一次循環。
pass語句是空語句,是為了保持程序結構的完整性。
實例:
1、
i = 30
while i>0:
if i%10!=0:
i-=1
continue #i不是10的倍數,則繼續下一次循環,不輸出
print (i)
i-=1
輸出:
30
20
10
2、
j = 10
while j>5:
if j==7:
break #j等于7時跳出整個循環
print (j)
j-=1
輸出:
10
9
8
當循環條件永遠為true時,循環將無限循環下去。可以使用 CTRL+C 來中斷循環。
for循環語句可以遍歷任何序列的項目,如一個列表或者一個字符串,語法格式如下:
for iterating_var in sequence:
statements(s)
實例:
1、
fruits = ['banana', 'apple', 'mango']
for fruit in fruits:
print (fruit)
輸出:
banana
mango
apple
2、
for index in range(len(fruits)):
print ( fruits[index]) #通過索引遍歷,輸出同實例1
循環中的else語句
在 python 中,for … else 表示這樣的意思,for 中的語句和普通的沒有區別,else 中的語句會在循環正常執行完(即 for 不是通過 break 跳出而中斷的)的情況下執行,while … else 也是一樣。
實例:判斷10到15中,每個數字是否為質數
for num in range(10,15):
for i in range(2,int(sqrt(num))):
if num%i == 0: #能整除說明不是質數
j=num/i
print ('%d equals %d * %d' % (num,i,j)) #打印出可分解的因子
break #跳出2層循環,開始計算下個數字 #在不是質數的情況下,不執行else部分
else: # for 不是通過 break 跳出而中斷的情況下執行
print (num, 'is a prime number' )
輸出:
10 equals 2 * 5
11 is a prime number
12 equals 2 * 6
13 is a prime number
14 equals 2 * 7
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。