10 輸入輸出
10.1 輸入輸出方式介紹
可採用input方式接收控制檯的輸入
str1=input("Please
input a string:")
print(str1)
print("{}".format(str1))
10.2 IO文件流
寫文件
# -*- coding=utf-8 -*-
textContext='''\
Created on 2017年2月26日
@author:
ZhuangLiang
'''
f=open("text.txt",
"w")
f.write(textContext)
f.close()
讀文件
f=open("text.txt")
while
True:
str=f.readline()
if
len(str)==0:
break
print(str)
11 異常處理
11.1 錯誤與異常處理
1 語法錯誤(Syntax Errors)
2 異常(Exceptions)
while
True:
try:
int(input("Enter
an number:"))
break
except
ValueError:
print("you
input the invalid number!")
try:
f=open("number.txt")
s=f.readline()
num=int(s.strip())
except
OSError
as
err:
print("OSError:",err)
except
ValueError:
print("can
not convert into integer")
12 面向對象編程(Objected-Oriented)及裝飾器(decorator)
12.1 面向對象編程
class
Student:
def
__init__(self,name,age):
self.name=name
self.age=age
def
introduce(self):
print("I'm
",self.name)
print("I'm
"+str(self.age)+"
years old!")
def
updateAge(self,newAge):
self.age=newAge
jim=Student("liangzhuang",24)
jim.introduce()
jim.updateAge(28)
print(jim.age)
12.2 裝飾器
裝飾函數以接收函數名參數,並且返回函數名,調用裝飾函數後得到的函數是經過"裝飾"的函數,示例如下:
def
deco(func):
def
inFunc():
return
"inFunc: "+func()
return
inFunc
#
@deco
def
myfunc():
return
"myfunc
called."
myfunc=deco(myfunc)
print(myfunc())
一般爲了程序簡潔,可採用註解的方式裝飾函數,如下:
def
deco(func):
def
inFunc():
return
"inFunc: "+func()
return
inFunc
@deco
def
myfunc():
return
"myfunc
called."
#
myfunc=deco(myfunc)
print(myfunc())