<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Python從設計之初就已經是一門物件導向的語言,正因為如此,在Python中建立一個類和物件是很容易的。本章節我們將詳細介紹Python的物件導向程式設計。
如果你以前沒有接觸過物件導向的程式語言,那你可能需要先了解一些物件導向語言的一些基本特徵,在頭腦裡頭形成一個基本的物件導向的概念,這樣有助於你更容易的學習Python的物件導向程式設計。
接下來我們先來簡單的瞭解下物件導向的一些基本特徵。
1.熟悉python中的物件導向機制;
2.能正確定義並使用類和物件。
1 設計一個向量類,實現資料的輸入、輸出、向量的加法、減法、點積、夾角等計算
import math class Vectors: def __init__(self): self.x1 = 0 self.x2 = 0 self.y1 = 0 self.y2 = 0 self.x = self.x2 - self.x1 self.y = self.y2 - self.y1 def add(self): self.x1 = int(input("input x1 ")) self.y1 = int(input("input y1 ")) self.x2 = int(input("input x2 ")) self.y2 = int(input("input y2 ")) def out(self): print(self.x, self.y) def plus(self, a, b): self.x = a.x + b.x self.y = a.y + b.y def sub(self, a, b): self.x = a.x - b.x self.y = a.y - b.y def pointmuti(self, a, b): return (a.x * b.x + a.y * b.y) def angle(self, a, b): a1 = (a.x * a.x + a.y * a.y) ** 0.5 b1 = (b.x * b.x + b.y * b.y) ** 0.5 ab = a.x * b.x + a.y * b.y return ab // (a1 * b1) v = Vectors() a = Vectors() b = Vectors() a.add() b.add() a.out() b.out() v.plus(a, b) v.out() v.sub(a, b) print(v.pointmuti(a, b)) print(math.acos(v.angle(a, b)))
2 設計一個三角形類,實現資料的輸入、輸出、周長、面積的計算
import math class Triangle: def __init__(self): a = 0 b = 0 c = 0 def add(self): self.a = int(input("輸入第1條邊的長度:")) self.b = int(input("輸入第2條邊的長度:")) self.c = int(input("輸入第3條邊的長度:")) while (self.a + self.b <= self.c): print("不符合三角邊的規定,重新輸入!") self.a = int(input("輸入第1條邊的長度:")) self.b = int(input("輸入第2條邊的長度:")) self.c = int(input("輸入第3條邊的長度:")) def out(self): print(self.a, self.b, self.c) def length(self): return self.a+self.b+self.c def area(self): p=self.length()/2 print(math.sqrt(p*(p-self.a)*(p-self.b)*(p-self.c))) t = Triangle() t.add() t.out() t.area()
到此這篇關於python 物件導向開發的文章就介紹到這了,更多相關python 物件導向開發內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45