1P18.python標準庫位置(通常是string.py所在的位置,也能夠whereis python找找)
C:\Python27\Lib
/usr/lib64/python2.6 html
第三方庫位置(通常爲site-packages位置)
C:\Python27\Lib\site-packages
/usr/lib/python2.6/site-packagespython
2P14.windows運行python腳本時,雙擊會直接退出。在腳本的最後一行後面添加raw_input()語句,這樣能夠保持窗口開着,直到按下回車鍵纔會關閉。windows
3P7.C或C++的內存管理是由開發者負責的,python的內存管理是由Python解釋器(Cpython,jython之類的)負責的。ide
4.九九乘法口決表的實現,還能夠寫成一個函數供調用函數
#for循環九九乘法表
def nine(n):
for i in range(1,n+1):
for j in range(1,i+1):
print "%s %s = %s\t" % (j,i,ij),
print ''.net
if name == "main":
nine(11)日誌
#while循環九九乘法表
def nine(n):
i=1
while i<n+1:
j=1
while j<=i:
print "%s %s = %s\t" % (j,i,ij),
j=j+1
print ''
i=i+1
if name == "main":
nine(4)code
5.P20.print語句調用str()函數顯示對象,而交互式解釋器則調用repr()函數來顯示對象。(不太懂,看到後面研究研究) htm
6.P21.下劃線( _)在解釋器中有特別的含義,表示最後一個表達式的值。
7.P21.%s表示由一個字符串來替換,而%d表示由一個×××來替換,%f表示由一個浮點型來替換。
8.P21.符號 >> 用來重定向輸出
下面例子將輸出重定向到標準錯誤輸出
import sys
print >> sys.stderr, 'Fatal error: invalid input!'對象
下面例子爲輸出重定向到日誌文件 logfile = open('/tmp/mylog.txt', 'a') print >> logfile, 'Fatal error: invalid input!' logfile.close() 9.P21-22.用raw_input()和print來作用戶交互操做。
10.布爾值是特殊的整型。在數值環境中,True會被當成整型值1,False則會被當成整型值0.
11.爲了輸出清晰美觀,帶逗號的print語句輸出的元素之間會自動添加一個空格,若是不想有空格,能夠用+號,print a+b
12.P31.文件的讀寫(參考了https://www.cnblogs.com/jiayongji/p/7119014.html?utm_source=itdadao&utm_medium=referral)
abc = open("D:/test/test.txt",'r')
for i in abc:
print i,
abc.close()
其中‘r'表示讀取,’w'表示寫入,'a'表示添加。'+'表示讀寫,'b'表示二進制訪問,若是沒提供,默認爲'r'。
13.P31異常的處理
要給代碼添加錯誤檢測及異常處理,能夠使用try-except語句當中。try以後的代碼組爲你打算管理的代碼,except以後的代碼組爲處理錯誤的代碼。例如:
try:
fobj = open("D:/test/test.txt",'w')
for a in fobj:
print a,
fobj.close()
except IOError,e:
print 'lhy', e
w爲寫,若是test.txt已在其餘軟件中打開,則不能經過此程序打開來編輯,則會報錯 「lhy File not open for reading」
14.P37練習2-6 判斷一個值是正數仍是負數或0
a=raw_input('input a number:')
#print a
b=float(a)
if (b<0):
print("負數")
elif (b>0):
print ("正數")
else:
print("0")
還有一種升級版,參考的https://blog.csdn.net/plosu/article/details/69668900
num = '^[-+]{0,1}[0-9]{1,}.{0,1}[0-9]{0,}'
check = True
while check:
input = raw_input("請輸入一個數值:")
if len(input) == 0 or not re.findall(num,input):
print "程序退出!"
break
inputnew = string.atof(input) #string.atof跟float的功能差很少
if inputnew > 0 or inputnew < 0:
if inputnew > 0:
print input , "是正數!"
if inputnew < 0:
print input , "是負數!"
else:
print "輸入的是0,既不是正數也不是負數!"
15.P37 練習2-7 從用戶那裏接受一個字符串輸入,而後逐字符顯示該字符串。分別用for和while循環實現。
a=raw_input('input:')
i=0
for i in range(len(a)):
print a[i]
i=i+1
a=raw_input('input:')
i=0
while i<len(a):
print a[i]
i=i+1
16.讀取多個輸入
讀取多個輸入
a,b,c=raw_input('input').split(" ")
i=float(a)+float(b)+float(c)
j=i/3
print a,b,c,i,j
17.排序sorted函數
a,b,c=[1.1,-3.4,2]
print sorted([a,b,c],reverse=True)
reverse=True時爲降序,False時爲升序,默認升序。
sorted(student_tuples, key=itemgetter(1,2))
[('john', 'A', 15), ('dave', 'B', 10), ('jane', 'B', 12)]
sorted(student_objects, key=attrgetter('grade', 'age'))
[('john', 'A', 15), ('dave', 'B', 10), ('jane', 'B', 12)]
key能夠設置多重排序,上例爲先以grade,而後再以age來排序
18.元組與列表:元組用圓括號(),列表用方括號[];元組是一種不可變類型。二者能夠用list()和tuple()相互轉換