Python課堂筆記 第六期丨檔案練習

2021-10-13 03:06:18 字數 4463 閱讀 5744

– 烏拉: python程式設計 【2020 薩大·檔案練習】

1、#eg0: 同級目錄下建立宴會邀請函

def

invite()

:with

open

('邀請函.txt'

,mode=

'w')

as kitty:

kitty.write(

'誠摯邀請您來參加本次宴會'

)print

("滴~請查收您信封 /微笑"

)#微笑查收可以刪除,只是無聊時新增的

invite(

)

2、#eg1:在上題基礎上新增內容best regards、李雷

def

invite()

:with

open

('邀請函.txt'

,mode =

'a')

as kitty:

kitty.write(

'\nbest regards'

) kitty.write(

'\n李雷'

)print

("滴~請查收您信封 /微笑"

)invite(

)

3、#eg2:在上題基礎上將檔案分別傳送給旭丁、徐美麗、韓梅梅
def

invite()

: names =

['旭丁'

,'徐美麗'

,'韓梅梅'

]#那個題目原名是:丁一,王美麗,韓梅梅 /一樣,無聊改的

with

open

('邀請函.txt'

, mode=

'r')

as kitty:

content = kitty.read(

)for name in names:

with

open

('%s邀請函.txt'

% name, mode=

'w')

as hello:

hello.write(

'%s:\n'

% name)

hello.write(content)

print

("滴~請查收您信封 /微笑"

)invite(

)

4、#eg3:假設邀請函現在的目錄是d:/test/邀請函.txt,需要在d:/test/路徑下的以各位收件人名字命名的資料夾下,將相應的邀請函郵件放入

def

invite()

: names =

['旭丁'

,'徐美麗'

,'韓梅梅'

]#那個題目原名是:丁一,王美麗,韓梅梅 /一樣,無聊改的

with

open

('邀請函.txt'

, mode=

'r')

as kitty:

content = kitty.read(

)for name in names:

with

open

('%s邀請函.txt'

% name, mode=

'w')

as hello:

hello.write(

'%s:\n'

% name)

hello.write(content)

print

("滴~請查收您信封 /微笑"

)invite(

)

5、#eg4:設計bird、fish類,都繼承自animal類,實現其方法print_info(),輸出資訊

class

animal()

:def

__init__

(self,age)

: self.age = age

defprint_info

(self)

:print

("我今年%d歲了!"

%(self.age)

)class

bird

(animal)

:def

__init__

(self, color)

:super()

.__init__(4)

self.color = color

defprint_info

(self)

:print

("我是乙隻%s的鳥"

%(self.color)

)super()

.print_info(

)class

fish

(animal)

:def

__init__

(self, weight)

:super()

.__init__(2)

self.weight = weight

defprint_info

(self)

:print

("我是乙隻%d斤重的魚"

%(self.weight)

)super()

.print_info(

)bird = bird(

"紅色"

)bird.print_info(

)fish = fish(5)

fish.print_info(

)

6、#eg5:設計乙個簡單的購房商貸月供計算器類,按照以下公式計算總利息和每月還款金額:

class

caculator()

:def

__init__

(self, loan, time)

: self.loan = loan

if time ==

"1":

self.time =

3elif time ==

"2":

self.time =

5elif time ==

"3":

self.time =

20def

get_total_interests

(self)

:return self.loan * self.get_interests_rate(

)def

get_interests_rate

(self)

:if self.time ==3:

return

0.0603

elif self.time ==5:

return

0.0612

elif self.time ==20:

return

0.0639

defget_monthly_payment

(self)

:return

(self.loan + self.get_total_interests())

/(self.time *12)

loan =

int(

input

("請輸入貸款金額:"))

time =

input

("請選擇貸款年限:1.3年(36個月) 2.5年(60個月) 3.20年(240個月)"

)loan_caculate = caculator(loan, time)

print

("月供為:%f"

% loan_caculate.get_monthly_payment(

))

7、#eg6:建立乙個人類person,定義使用手機打**的方法use_phone_call():

class

phone()

:def

call

(self)

:print

("使用功能機打**"

)class

iphone

(phone)

:def

call

(self)

:print

("使用蘋果手機打**"

)class

aphone

(phone)

:def

call

(self)

:print

("使用安卓手機打**"

)class

person()

:def

use_phone_call

(self, phone)

: phone.call(

)person = person(

)person.use_phone_call(phone())

person.use_phone_call(iphone())

person.use_phone_call(aphone(

))

CSDN 精品專欄 第六期

以往精品專欄推薦 csdn 精品專欄 第一期 csdn 精品專欄 第二期 csdn 精品專欄 第三期 csdn 精品專欄 第四期 csdn 精品專欄 第五期 推薦理由 很多人使用過linux命令,但是不成體系,很多的原理並不是特別的清楚,本專欄將在介紹linux命令的同時,系統的講解蘊藏在命令背後的...

第六期提高班

首先我來說一下,我很慶幸自己當初能夠報這個班兒,這是我們數信學院計算機基礎教育部的公尺新江教授 牽頭主辦的乙個 試驗田 全新式的教育理念,基本上讓我初步了解了真正的大學式教育應該是什麼樣兒的,在這樣兒的班級裡真的是省人.上個週日我們來到南五樓接著我們這新學期的課程,上午公尺老師主要和大家交流了一下這...

第六期新人助跑感悟

為期一周的新人助跑已經結束了,我的心情久久不能平靜。在這不算太長的時間裡,新同事和員工發展中心的各位老師在我心裡留下了深深的烙印,這些就是我以後工作中汲取力量的源泉。首先我應該感謝公司,因為沒有公司,就不會有今天我們的相聚,公司給了我們乙個展示自己的平台,我們就應該盡我們最大的努力去實現自己的價值,...