在介紹之前我們先來看看計算機(jī)的三個根本性基礎(chǔ):
1.計算機(jī)是執(zhí)行輸入、運(yùn)算、輸出的機(jī)器
2.程序是指令和數(shù)據(jù)的集合
3.計算機(jī)的處理方式有時與人們的思維習(xí)慣不同
(以上是引自《計算機(jī)是怎樣跑起來的》)
個人認(rèn)為深入理解這三大原則,對于計算機(jī)新技術(shù)的入門很有幫助。就拿Python來說吧。如果我們了解了它的輸入、輸出和運(yùn)算規(guī)則,了解了它的指令集和數(shù)據(jù)結(jié)構(gòu),進(jìn)一步了解了它的運(yùn)算處理方式,那么是不是我們就可以完成一些簡單的程序,實(shí)現(xiàn)一些小巧的功能,也就是實(shí)現(xiàn)了python的入門了呢。下面就來簡單的介紹一下Python輸入/輸出、數(shù)據(jù)類型、條件/循環(huán)語句吧。
一、預(yù)備知識
Python文件以.py為擴(kuò)展名。
(1)Python標(biāo)識符
在python中,所有標(biāo)識符可以包括英文、數(shù)字以及下劃線(_),但不能以數(shù)字開頭。python中的標(biāo)識符是區(qū)分大小寫的。以下劃線開頭的標(biāo)識符是有特殊意義的。以單下劃線開頭(_foo)的代表不能直接訪問的類屬性,需通過類提供的接口進(jìn)行訪問,不能用"from xxx import *"而導(dǎo)入;以雙下劃線開頭的(__foo)代表類的私有成員;以雙下劃線開頭和結(jié)尾的(__foo__)代表python里特殊方法專用的標(biāo)識,如__init__()代表類的構(gòu)造函數(shù)。
(2)Python保留字符
下面的列表顯示了在Python中的保留字。這些保留字不能用作常數(shù)或變數(shù),或任何其他標(biāo)識符名稱。所有Python的關(guān)鍵字只包含小寫字母。
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
(3)行和縮進(jìn)
學(xué)習(xí)Python與其他語言最大的區(qū)別就是,Python的代碼塊不使用大括號({})來控制類、函數(shù)以及其他邏輯判斷。python最具特色的就是用縮進(jìn)來寫模塊。縮進(jìn)的空白數(shù)量是可變的,但是所有代碼塊語句必須包含相同的縮進(jìn)空白數(shù)量,這個必須嚴(yán)格執(zhí)行。
(4)Python引號
Python接收單引號(' ),雙引號(" ),三引號(''' """)來表示字符串,引號的開始與結(jié)束必須的相同類型的。 其中三引號可以由多行組成,編寫多行文本的快捷語法。
(5)Python注釋
python中單行注釋采用 #開頭。
以 #!開頭的稱為組織行,這行告訴你的Linux/Unix系統(tǒng)當(dāng)你執(zhí)行你的程序的時候,它應(yīng)該運(yùn)行哪個解釋器。例如:#!/usr/bin/python
二、輸入輸出:
(1)程序的輸入/輸出
str = input("Enter your input: ");#鍵盤輸入
print ("Received input is : ", str);#屏幕輸出
(2)文件的輸入/輸出
poem ='''''
Programmingis fun
When thework is done
if youwanna make your work also fun:
use Python!
'''
f =open('poem.txt', 'w') #open for 'w'riting
f.write(poem) #write text to file
f.close() #close the file
f =open('poem.txt')
#if nomode is specified, 'r'ead mode is assumed by default
whileTrue:
line = f.readline()
if len(line) == 0:#Zero length indicatesEOF
break
print(line),
#Notice comma to avoid automatic newlineadded by Python
f.close()#close the file
三、數(shù)據(jù)結(jié)構(gòu):
(1) None類型
None表示空對象。如果一個函數(shù)沒有顯示的返回一個值,None就被返回。None的bool值為false
(2) 數(shù)值類型
Python有4種數(shù)值類型:整數(shù)、長整數(shù)、浮點(diǎn)數(shù)和復(fù)數(shù)。所有數(shù)值類型都是不可變類型。
python不支持自增自減操作符++,--,++i,其實(shí)是+(+i)的意思
運(yùn)算符與表達(dá)式:基本上與其它語言相類似,只是有以下幾點(diǎn)不同:
x*y:乘法。2 * 3得到6。'la' * 3得到'lalala'。
x**y:冪運(yùn)算,返回 x 的 y 次冪。
x/y:x 除以 y,4/3得到1(整數(shù)的除法得到整數(shù)結(jié)果)。4.0/3或4/3.0得到1.3333333333333333。
x//y:取整除。返回商的整數(shù)部分。4 // 3.0得到1.0。
除法//:地板除在任何時候都會將小數(shù)部分舍為0
-x 改變x的符號位
(3) 字符串
字符串:單引號(‘)和雙引號(")的作用相同,只能創(chuàng)建單行字符串。轉(zhuǎn)義符是()。
三引號(如:'''或者""")之間的一切都是字符串的內(nèi)容。
自然字符串:在字符串前加R(或r)指示某些不需要如轉(zhuǎn)義符那樣的特別處理的字符串,如:print R“Hello World”,將直接輸出“Hello World”而不會出現(xiàn)換行的情況。
獲得子串: s[i:j],返回s 從i到j(luò)(不包括j)之間的子串。若i省略則i=0,若j省略則j=len(s)-1
str() repr() 函數(shù)或者向后的引號(`)可以將其他類型的數(shù)據(jù)轉(zhuǎn)換為字符串。
Unicode字符串:在字符串前加U(或u)。如 a=u'hello',每個字符用16位來表示 "hello" 'world'會被自動連接為一個字符串"helloworld" ,"s1"u"s2"就會產(chǎn)生u"s1s2"
字符串、Unicode字符串及tuple是不可變的序列。
(4) 列表和元組(list& tuple)
列表和元組是任意對象的序列,支持的常用操作:
len()
append()
insert(index,aMember)
list[index]=aNewMember
一個元素的元組:a=(12,) #注意一定要個額外的逗號!對于tuple中的元素,不可以修改,也不可以添加列表是可變的序列,允許插入,刪除,替換元素等操作,可變序列支持的操作:
s[i]=v
s[i:j]=t # t要是個序列
del s[i]
del s[i:j]
(5)字典
字典就是一個關(guān)聯(lián)數(shù)組(或稱為哈希表),是一個通過關(guān)鍵字索引的對象集合。使用{}來創(chuàng)建一個字典。字典的key是不能修改的對象(比如數(shù)字和tuple)。
#!/usr/bin/python
#創(chuàng)建字典
dict ={'Name': 'Zara', 'Age': 7, 'Class': 'First'};
#修改字典元素
dict['Age']= 8; # update existing entry
dict['School']= "DPS School"; # Add new entry
#訪問輸出字典元素
print("dict['Age']: ", dict['Age']);#訪問字典里的元素
print("dict['School']: ", dict['School']);
#刪除
deldict['Name']; # 刪除鍵是'Name'的條目
dict.clear(); # 清空詞典所有條目
del dict;
四、條件、循環(huán)控制語句
控制流語句:通過使用or,and,not關(guān)鍵字可以建立任意的條件表達(dá)式
(1)if-elif-else結(jié)構(gòu):
if something == 1:
doSomething1()
elif something == 2:
doSomething2()
else:
pass # 表示一個空的塊或者是空的主體,使用pass語句
(2)while-else結(jié)構(gòu):
while something:
doSomething1()
else:
doSomething2()
(3)for-else結(jié)構(gòu):
for i in range(1, 10, 2): # i 值從 1 到 10,步長為2
print (i)
else:
print ('The for loop is over')
另:break和 continue:用于中斷和繼續(xù)循環(huán)。(Python 沒有switch-case 語句,可以通過 if 語句配合字典完成同樣的工作)
評論