練習題:
1、上面提到了許多魔法方法,如__new__,init,str,rstr,getitem,setitem__等等,請總結它們各自的使用方法。
init()方法,可以理解為初始化方法。
new()方法,建立乙個例項物件。
只要自己定義了__str(self)方法,使用print輸出物件的時候,那麼就會列印從在這個方法中return的資料
getitem(self,key)返回與指定鍵想關聯的值。對序列來說,鍵應該是0~n-1的整數,其中n為序列的長度。對對映來說,鍵可以是任何型別。
setitem(self,key,value):與鍵相關聯的方式儲存值,以便之後能夠使用__setitem__來獲取。物件可變時才需要實現這個方法。
2、利用python做乙個簡單的定時器類
import time as t
class mytimer():
definit(self):
self.unit = [『年』, 『月』, 『日』, 『小時』, 『分』, 『秒』] #單位
self.prompt = 『未開始計時!』
self.lasted =
self.begin = 0
self.end = 0
def __str__(self):
return self.prompt
__repr__ = __str__
def __add__(self, other):
prompt = '總共執行了'
result =
for index in range(6):
if result[index]:
prompt += (str(result[index]) + self.unit[index])
return prompt
#開始計時
def start(self):
self.begin = t.localtime()
print('計時開始...')
print(self.begin)
#停止計時
def stop(self):
if not self.begin:
else:
self.end = t.localtime()
print(self.end)
self._calc()
print('計時結束...')
def _calc(self):
self.lasted =
self.prompt = '總共執行了'
for index in range(6):
if self.lasted[index]:
self.prompt += (str(self.lasted[index]) + self.unit[index])
self.begin = 0
self.end = 0
print(self.prompt)
第七次作業
磁碟管理和維護 磁碟檔名 dev sd a p 1 128 dev hd a p 1 128 dev vd a p 1 128 heads 磁面 sectors track 扇區 cylinders磁柱 分割槽命令 fdisk dev sd 格式化 mkfs.ext4 dev sda mkfs.xf...
第七次作業
共有一下六步 1.客戶機提出網域名稱解析請求,並將該請求傳送給本地的網域名稱伺服器。2.當本地的網域名稱伺服器收到請求後,就先查詢本地的快取,如果有該紀錄項,則本地的網域名稱伺服器就直接把查詢的結果返回。3.如果本地的快取中沒有該紀錄,則本地網域名稱伺服器就直接把請求發給根網域名稱伺服器,然後根網域...
第七次作業
numpy統計分布顯示 from sklearn.datasets import load iris import matplotlib.pyplot as plt import numpy as np iris data load iris data iris length iris data 2...