學習 python 之路
abs(-1) --絕對值
1
>>> print 'with %s say %s' % (a,(b+' ')*3)
with king say hi hi hi
vim test.py
x=raw_input('Enter x: ')
if x>0:
print '"x" must be 0!'
輸入x的值來返回結果其中if語句是不需要() 的 raw_input()是一個內建函式,她是 最容易從使用者那裡獲取到值得方式
x=raw_input('Enter x: ')
if x>0:
print 'double x: %d' % (int(x)*2) 兩倍值 也可以elif
while 迴圈
s=0
while s<3:
print 'while %d' % (s)
s+=1
for迴圈
a=['a','b','c','d']
for s in a:
print 'Have this options: %s' % (s)
a='funny'
for s in a:
print s
迴圈索引 迴圈元素
a='funny'
for s,c in enumerate(a): for s in range(len(a)):
print c ,'(%d)' % s print a[s],'(%d)' % s
列表解析 從for裡傳值到列表中
squared=[x**2 for x in range(4)]
for i in squared:
print i
檔案開啟讀寫 open(a,b) a=filename b= 'r'只讀'w'寫‘+’讀寫'b'二進位制訪問 -在print使用,抑制文字中生成的換行不然會有空白行
filename=raw_input('Enter you file name: ')
handle=open(filename,'r')
for i in handle:
print i,
handle.close()
try except
try 管理程式碼 except出現錯誤後的執行程式碼
def ff(a):
return (a+a)
print ff(1)
python裡面的類的定義與呼叫: 其中object不能大寫 不然就無定義 __init__是特殊方法有開始和結束有 兩個下劃無論是否呼叫都回執行,預設是什麼也不
做 self是this識別符號 是類自身的引用
#!/usr/local/bin/python
class TestClass(object):
version=0.1
def __init__(self,nm='Sunny'):
self.name=nm
print 'create a instance for ', nm
def showname(self):
print 'your name: ', self.name
print 'My name is',self.__class__.__name__
def showver(self):
print self.version
def addME2ME(self,x):
return x+x
fool=TestClass()
test=fool.showname()
test2=fool.showver()
test3=fool.addME2ME(2)
print test3
----------------------------------
[root@puppet pyy]# python file.py
create a instance for Sunny
your name: Sunny
My name is TestClass
0.1
4
dir顯示屬性 不加引數顯示全部 標籤名字
>>> dir(1)
['__abs__', '__add__', '__and__', '__class__', '__cmp__', '__coerce__', '__delattr__', '__div__', '__divmod__', '__doc__', '__float__', '__floordiv__', '__format__', '__getattribute__', '__getnewargs__', '__hash__', '__hex__', '__index__', '__init__', '__int__', '__invert__', '__long__', '__lshift__', '__mod__', '__mul__', '__neg__', '__new__', '__nonzero__', '__oct__', '__or__', '__pos__', '__pow__', '__radd__', '__rand__', '__rdiv__', '__rdivmod__', '__reduce__', '__reduce_ex__', '__repr__', '__rfloordiv__', '__rlshift__', '__rmod__', '__rmul__', '__ror__', '__rpow__', '__rrshift__', '__rshift__', '__rsub__', '__rtruediv__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__truediv__', '__trunc__', '__xor__', 'bit_length', 'conjugate', 'denominator', 'imag', 'numerator', 'real']
>>> dir('a')
['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'a', 'aa', 'ad', 'ap', 'b', 'foo', 'py', 'rr', 'squared', 'sys', 'th', 'user', 'x']
type返回物件型別
>>> type (a)
練習:
自身輸出是存在單引號 print是 字元輸出
>>> a="aa"
>>> a
'aa'
>>> print a
aa
>>> a='aa'
>>> a
'aa'
>>> print a
aa
用while或者for 做迴圈 從0-10 要使用range內建函式
a=0
while a<11:
print a
a+=1
b=[0,1,2,3,4,5,6,7,8,9,10]
for i in range(len(b)):
print b[i]
輸入數值 判斷正負零
a=raw_input('Enter a number:')
if int(a)==0:
print "zero"
elif int(a)<0:
print "fushu"
else :
print "zhenshu"
滿足5就返回 否則就一直讓客戶輸入
b=True
while b:
a=raw_input('Enter 1-100 number: ')
if int(a)==5:
b=False
else:
b=True
1為和 2 為平均 3 退出
print "Please Enter option"
print "1 will output sum"
print "2 will output avr"
print "3 exit "
b=raw_input('Enter a option:')
a=[1,1,1,1,1]
c=0
d=True
while d:
if int(b)==1:
for i in range(len(a)):
c=a[i]+c
print c
d=False
elif int(b)==2:
for i in range(len(a)):
c=a[i]+c
v=float(c/5)
print v
d=False
elif int(b)==3:
d=False
3 章
#!/usr/local/bin/python
"this is module"
import sys
import os
debug = True
class Fooclass(object):
"Foo class"
pass
def test():
"function"
foo = Fooclass()
if debug:
print 'ran test'
if __name__ == '__main__':
test()
沒弄懂什麼 叫做一個模組的而不是執行 * 指你只想執行一個程式碼檔案裡面的一個模組 可是它的主程式部分無論你是匯入它的模組還是執行它的程式碼檔案,它一定會執行的,所以為了解決這個問題就有了__name__
模組被匯入時 __name__的值為名字
模組被執行時__name__的值為“__main__”
寫程式碼要分塊寫 可以多次利用 是和別人合作來的 不是通篇一個獨立的檔案
所以在主程式裡寫測試程式碼 這樣在直接執行的時候才執行 匯入不執行
import os
類 #!/usr/local/bin/python
'makeTextFile.py -- create test file '
import os
ls=os.linesep
#get filename
fname = raw_input('Enter you file name:')
while True:
if os.path.exists(fname): 檢測程式碼的函式
print "ERROR:'%s' already exists" % fname
break
else:
#get file conenett lines
all=[]
print "\nEnter lines ('.' by itself to quit .)\n"
##loop until user terminates input
while True:
entry = raw_input('>')
if entry == '.':
break
else:
all.append(entry)
#write line to file with proper line-ending
fobj = open(fname,'w')
fobj.writelines(['%s%s' % (x,ls)for x in all])
fobj.close()
print 'DONE!'
似於os.linesep要直譯器做兩次查詢 查詢一次模組 查詢一次變數
所以設定本地變數能夠 提高查詢速度 以上是 新建一個檔案 然後直接輸入字元
append 用法: 行終止 類似於\n \r
writelines 用法: 傳遞的 可以是字元列表
以下是開啟檔案每行輸出
#!/usr/local/bin/python
'readTextFile.py -- read and display text file'
#get filename
fname = raw_input('Enter filename:')
#attempt to open file for reding
try:
bj = open(fname, 'r')
except IOError,e:
print "***file open error:",e
else:
#dispaly contents to the screen
for eachLine in bj :
print eachLine,
bj.close()
其實還不是很懂except的用法
try 檢測錯誤程式碼except報錯之後處理方式else無錯誤執行方案 後面那個print的都好是為了解決每行的行結束符
os.path.exists()和異常處理,一般是用前者 前者返回兩個值是or不是
os.linesep 當前平臺使用的行終止符
3 練習
特殊方法
一行可以書寫多個語句 , 一行也可以分為多個語句來寫 ''' / ( 等
x=1 y=1 z=1
字串物件strip()方法
合併檔案選擇建立還是顯示
新增新功能 允許使用者編輯一個存在的檔案 GUI 工具包或者基於螢幕編輯模組 curses模組 允許使用者儲存他的修改 或者取消他的修 改 保證檔案安全性要關閉
1
>>> print 'with %s say %s' % (a,(b+' ')*3)
with king say hi hi hi
vim test.py
x=raw_input('Enter x: ')
if x>0:
print '"x" must be 0!'
輸入x的值來返回結果其中if語句是不需要() 的 raw_input()是一個內建函式,她是 最容易從使用者那裡獲取到值得方式
x=raw_input('Enter x: ')
if x>0:
print 'double x: %d' % (int(x)*2) 兩倍值 也可以elif
while 迴圈
s=0
while s<3:
print 'while %d' % (s)
s+=1
for迴圈
a=['a','b','c','d']
for s in a:
print 'Have this options: %s' % (s)
a='funny'
for s in a:
print s
迴圈索引 迴圈元素
a='funny'
for s,c in enumerate(a): for s in range(len(a)):
print c ,'(%d)' % s print a[s],'(%d)' % s
列表解析 從for裡傳值到列表中
squared=[x**2 for x in range(4)]
for i in squared:
print i
檔案開啟讀寫 open(a,b) a=filename b= 'r'只讀'w'寫‘+’讀寫'b'二進位制訪問 -在print使用,抑制文字中生成的換行不然會有空白行
filename=raw_input('Enter you file name: ')
handle=open(filename,'r')
for i in handle:
print i,
handle.close()
try except
try 管理程式碼 except出現錯誤後的執行程式碼
def ff(a):
return (a+a)
print ff(1)
python裡面的類的定義與呼叫: 其中object不能大寫 不然就無定義 __init__是特殊方法有開始和結束有 兩個下劃無論是否呼叫都回執行,預設是什麼也不
做 self是this識別符號 是類自身的引用
#!/usr/local/bin/python
class TestClass(object):
version=0.1
def __init__(self,nm='Sunny'):
self.name=nm
print 'create a instance for ', nm
def showname(self):
print 'your name: ', self.name
print 'My name is',self.__class__.__name__
def showver(self):
print self.version
def addME2ME(self,x):
return x+x
fool=TestClass()
test=fool.showname()
test2=fool.showver()
test3=fool.addME2ME(2)
print test3
----------------------------------
[root@puppet pyy]# python file.py
create a instance for Sunny
your name: Sunny
My name is TestClass
0.1
4
dir顯示屬性 不加引數顯示全部 標籤名字
>>> dir(1)
['__abs__', '__add__', '__and__', '__class__', '__cmp__', '__coerce__', '__delattr__', '__div__', '__divmod__', '__doc__', '__float__', '__floordiv__', '__format__', '__getattribute__', '__getnewargs__', '__hash__', '__hex__', '__index__', '__init__', '__int__', '__invert__', '__long__', '__lshift__', '__mod__', '__mul__', '__neg__', '__new__', '__nonzero__', '__oct__', '__or__', '__pos__', '__pow__', '__radd__', '__rand__', '__rdiv__', '__rdivmod__', '__reduce__', '__reduce_ex__', '__repr__', '__rfloordiv__', '__rlshift__', '__rmod__', '__rmul__', '__ror__', '__rpow__', '__rrshift__', '__rshift__', '__rsub__', '__rtruediv__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__truediv__', '__trunc__', '__xor__', 'bit_length', 'conjugate', 'denominator', 'imag', 'numerator', 'real']
>>> dir('a')
['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'a', 'aa', 'ad', 'ap', 'b', 'foo', 'py', 'rr', 'squared', 'sys', 'th', 'user', 'x']
type返回物件型別
>>> type (a)
練習:
自身輸出是存在單引號 print是 字元輸出
>>> a="aa"
>>> a
'aa'
>>> print a
aa
>>> a='aa'
>>> a
'aa'
>>> print a
aa
用while或者for 做迴圈 從0-10 要使用range內建函式
a=0
while a<11:
print a
a+=1
b=[0,1,2,3,4,5,6,7,8,9,10]
for i in range(len(b)):
print b[i]
輸入數值 判斷正負零
a=raw_input('Enter a number:')
if int(a)==0:
print "zero"
elif int(a)<0:
print "fushu"
else :
print "zhenshu"
滿足5就返回 否則就一直讓客戶輸入
b=True
while b:
a=raw_input('Enter 1-100 number: ')
if int(a)==5:
b=False
else:
b=True
1為和 2 為平均 3 退出
print "Please Enter option"
print "1 will output sum"
print "2 will output avr"
print "3 exit "
b=raw_input('Enter a option:')
a=[1,1,1,1,1]
c=0
d=True
while d:
if int(b)==1:
for i in range(len(a)):
c=a[i]+c
print c
d=False
elif int(b)==2:
for i in range(len(a)):
c=a[i]+c
v=float(c/5)
print v
d=False
elif int(b)==3:
d=False
3 章
#!/usr/local/bin/python
"this is module"
import sys
import os
debug = True
class Fooclass(object):
"Foo class"
pass
def test():
"function"
foo = Fooclass()
if debug:
print 'ran test'
if __name__ == '__main__':
test()
沒弄懂什麼 叫做一個模組的而不是執行 * 指你只想執行一個程式碼檔案裡面的一個模組 可是它的主程式部分無論你是匯入它的模組還是執行它的程式碼檔案,它一定會執行的,所以為了解決這個問題就有了__name__
模組被匯入時 __name__的值為名字
模組被執行時__name__的值為“__main__”
寫程式碼要分塊寫 可以多次利用 是和別人合作來的 不是通篇一個獨立的檔案
所以在主程式裡寫測試程式碼 這樣在直接執行的時候才執行 匯入不執行
import os
類 #!/usr/local/bin/python
'makeTextFile.py -- create test file '
import os
ls=os.linesep
#get filename
fname = raw_input('Enter you file name:')
while True:
if os.path.exists(fname): 檢測程式碼的函式
print "ERROR:'%s' already exists" % fname
break
else:
#get file conenett lines
all=[]
print "\nEnter lines ('.' by itself to quit .)\n"
##loop until user terminates input
while True:
entry = raw_input('>')
if entry == '.':
break
else:
all.append(entry)
#write line to file with proper line-ending
fobj = open(fname,'w')
fobj.writelines(['%s%s' % (x,ls)for x in all])
fobj.close()
print 'DONE!'
似於os.linesep要直譯器做兩次查詢 查詢一次模組 查詢一次變數
所以設定本地變數能夠 提高查詢速度 以上是 新建一個檔案 然後直接輸入字元
append 用法: 行終止 類似於\n \r
writelines 用法: 傳遞的 可以是字元列表
以下是開啟檔案每行輸出
#!/usr/local/bin/python
'readTextFile.py -- read and display text file'
#get filename
fname = raw_input('Enter filename:')
#attempt to open file for reding
try:
bj = open(fname, 'r')
except IOError,e:
print "***file open error:",e
else:
#dispaly contents to the screen
for eachLine in bj :
print eachLine,
bj.close()
其實還不是很懂except的用法
try 檢測錯誤程式碼except報錯之後處理方式else無錯誤執行方案 後面那個print的都好是為了解決每行的行結束符
os.path.exists()和異常處理,一般是用前者 前者返回兩個值是or不是
os.linesep 當前平臺使用的行終止符
3 練習
為什麼python不需要宣告變數 不用定義函式返回值型別
例如c 實現開闢一個空間然後把資料拿去到空間內
而python則是以資料為中心 先把資料存貯到記憶體中然後再去引用
避免使用雙下劃線特殊方法
一行可以書寫多個語句 , 一行也可以分為多個語句來寫 ''' / ( 等
x=1 y=1 z=1
字串物件strip()方法
合併檔案選擇建立還是顯示
新增新功能 允許使用者編輯一個存在的檔案 GUI 工具包或者基於螢幕編輯模組 curses模組 允許使用者儲存他的修改 或者取消他的修 改 保證檔案安全性要關閉
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30629069/viewspace-2129466/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python 學習之路(下)Python
- Python學習之路—Python基礎(一)Python
- Python 學習之路 1——認識 PythonPython
- python學習之路—day1Python
- Python學習之路5-字典Python
- Python學習之路8.1-類Python
- 學習python的進階之路Python
- Python學習之路35-協程Python
- Python學習之路3-操作列表Python
- Python學習之路41-元類Python
- Python學習之路4-if語句Python
- Python學習之路7-函式Python函式
- Python學習之路13-記分Python
- Python學習之路16-使用APIPythonAPI
- Python學習之路day3-集合Python
- 資深開發者的Python學習之路Python
- Python學習之路14-生成資料Python
- Python學習之路22-字典和集合Python
- Python學習之路2-列表介紹Python
- Python學習之路12-外星人Python
- Python學習之路17-Django入門PythonDjango
- Python學習之路20-資料模型Python模型
- java學習之路Java
- 學習java之路Java
- php學習之路PHP
- EBS學習之路
- Python學習之路10-測試程式碼Python
- Python學習之路11-武裝飛船Python
- AI 學習之路——輕鬆初探 Python 篇(三)AIPython
- Python學習之路15-下載資料Python
- AI 學習之路——輕鬆初探 Python 篇(一)AIPython
- Python學習之路8.2-對Python類的補充Python
- Python學習之路28-符合Python風格的物件Python物件
- Python學習之路38-動態建立屬性Python
- Python學習之路9-檔案和異常Python
- Python學習之路23-文字和位元組序列Python
- Python學習之路——類-物件導向程式設計Python物件程式設計
- 再次前往python學習之路第一天Python