1. 程式人生 > >day-05 python函式

day-05 python函式

# #-*- coding:utf-8 -*-
# 1:編寫一個名為 make_shirt()的函式,它接受一個尺碼以及要印到 T 恤上的字樣。這個函式應列印一個句子,概要地說明 T 恤的尺碼和字樣。
def make_shirt(size,str_1):
print("T恤的尺碼為:{} 字樣為:{}".format(size,str_1))
make_shirt('m','餘生都是你 ')

# 2:編寫一個名為 describe_city()的函式,它接受一座城市的名字以及該城市所屬的國家。這個函式應列印一個簡單的句子,如 Reykjavik is in Iceland。
# 給用於儲存國家的形參指定預設值。為三座不同的城市呼叫這個函式,且其中至少有一座城市不屬於預設國家。
def describe_city(city,country="中國"):
print(city, "is in ",country)
describe_city('長沙')

# 3:編寫一個名為 city_country()的函式,它接受城市的名稱及其所屬的國家。這個函式應返回一個格式類似於下面這樣的字串:
# "長沙, 中國"
# 至少使用三個城市國家對呼叫這個函式,並列印它返回的值。
def city_country(city,country="中國"):
print(city + ", "+country)
city_country('changsha')
# 4:編寫一個名為 make_album()的函式,它建立一個描述音樂專輯的字典。這個函式應接受歌手的名字和專輯名,並返回一個包含這兩項資訊的字典。
# 使用這個函式建立三個表示不同專輯的字典,並列印每個返回的值,以核實字典正確地儲存了專輯的資訊。
def make_album(singer,zhuanji):
dict={"歌手":singer,"專輯":zhuanji}
print(dict)
return dict
make_album('張信哲', '信仰')
make_album('徐譽滕', '等一分鐘')
make_album('王玉萌', '浪子回頭')

# 5:編寫一個函式,它接受顧客要在三明治中新增的一系列食材。這個函式只有一個形參(它收集函式呼叫中提供的所有食材),並列印一條訊息,
# 對顧客點的三明治進行概述。呼叫這個函式三次,每次都提供不同數量的實參。
def Sandwich_make(*args):
print(*args)
Sandwich_make('奶油')
Sandwich_make('奶油', '蛋糕')
Sandwich_make('奶油', '生菜', '蛋糕')

# 初級題型:
# 1:定義一個函式,成績作為引數傳入。如果成績小於60,則輸出不及格。如果成績在60到80之間,則輸出良好;如果成績高於80分,則輸出優秀,
# 如果成績不在0-100之間,則輸出 成績輸入錯誤。
def chengji(score_1):
score=input('請輸入成績')
if score.isdigit():
score_1=int(score)
if 0<score_1<=100:
if score_1 < 60:
print('不及格')
elif 60<score_1 <=80:
print('良好')
elif score>80:
print('優秀')
else:
print('成績輸入有誤,請輸入成績在0-100之間')
else:
print('請重新輸入成績')
#
# chengji(77) # 呼叫函式
# 2:用函式實現:
# 企業發放的獎金根據利潤提成。
# 利潤(I)低於或等於10萬元時,獎金可提10%;
# 利潤高於10萬元,低於20萬元時,低於10萬元的部分按10%提成,高於10萬元的部分,可可提成7.5%;
# 20萬到40萬之間時,高於20萬元的部分,可提成5%;
# 40萬到60萬之間時高於40萬元的部分,可提成3%;
# 60萬到100萬之間時,高於60萬元的部分,可提成1.5%,高於100萬元時,超過100萬元的部分按1%提成,
# 從鍵盤輸入當月利潤I,求應發放獎金總數?
def bonus():
profit=input('請輸入當月利潤I')
if profit.isdigit():
profit_1=int(profit)
if profit_1<=100000:
# profit_1=profit_1*0.1
print('獎金可提10%,獎金為{}'.format(profit_1*0.1))
elif 100000<profit_1<200000:
print('獎金可提7.5%,獎金為{}'.format(profit_1*0.075))
elif 200000<=profit_1<400000:
print('獎金可提5%,獎金為{}'.format(profit_1 * 0.05))
elif 400000<=profit_1<600000:
print('獎金可提3%,獎金為{}'.format(profit_1 * 0.03))
elif 600000<=profit_1<1000000:
print('獎金可提1.5%,獎金為{}'.format(profit_1 * 0.015))
else:
print('獎金可提1%,獎金為{}'.format(profit_1 * 0.01))
else:
print('輸入的利潤有誤,請重新輸入')
# bonus() # 呼叫函式

# 3:用python函式實現如下:
# 隨機產生一個數,讓使用者來猜,猜中結束,若猜錯,則提示使用者猜大或猜小。
import random
x=random.randint(1,10)
i=0
while i<10:
y=int(input("請輸入數字"))
if x==y:
print("恭喜你猜對了")
break
elif y < x:
print("猜小了")
else: print("猜大了")

# # 4:寫函式,判斷使用者傳入的物件(字串、列表、元組)長度是否大於5
def parameter(category):
if len(category)>5:
print("該引數長度大於5")
else:
print("該引數長度不大於5")
str_1="hello python"
list=[33,66,88,99]
tuple=("千里挑一","1257",7890)
parameter(str_1)
parameter(list)
parameter(tuple)
# # 5:寫函式,將姓名、性別,城市作為引數,並且性別預設為f(女)。如果城市是在長沙並且性別為女,則輸出姓名、性別、城市,並返回True,否則返回False。
def constitute(name,city,sex='f'):
name=''
# sex='f'
city=''
if sex=='f':
print('女')
if city=='長沙'and sex=='f':
print(name,sex,city,)
return True
else:
print('')
return False
constitute('zhao','女','中國')
# 6:寫函式,檢查傳入列表的長度,如果大於2,那麼僅僅保留前兩個長度的內容,並將新內容返回
# def list(num):
# if len(num) > 2:
# a=num[2:]
# print(a)
# list([1,2,3,4,5,6,])
# 7:定義一個函式,傳入一個字典和字串,判斷字串是否為字典中的值,如果字串不在字典中,則新增到字典中,並返回新的字典。
# def add_dict(dict_1,str_1):
# dict={'sex':'男','age':18}
# str_1='python'
# if str_1 not in dict.values():
# dict[str_1]= str_1
# else:
# print('已存在')
# return dict
#
# r=add_dict({'age':12,'sex':'hello'},'4')
# print(r)
#
# 中級題型:
# # 1:有1、2、3、4個數字,能組成多少個互不相同且無重複數字的三位數?都是多少?
# for x in range(1,5):
# for y in range(1,5):
# for z in range(1,5):
# if (x!=y) and (y!=z) and (z!=x):
# print("%d%d%d" % (x, y, z))
# # 2:一個足球隊在尋找年齡在m歲到n歲的男生or女生(包括m歲和n歲,到底是找男生還是女生,可指定性別)加入
sum=0
m=10
n=12
for i in range(0,10):
sex=str(input('請輸入性別,m表示男性,f表示女生'))
age=int(input('請輸入年齡'))
if (age>=10 and age<=12) and (sex=='f'):
sum+=1
print('恭喜你被錄入了')
else:
print("請輸入年齡10歲到12歲的女性")
print('總錄入人數:'+str(sum))
# 。
# 寫一個程式,詢問使用者的性別(m表示男性,f表示女性)和年齡,然後顯示一條訊息指出這個人是否可以加入球隊,詢問k次後,輸出滿足條件的總人數。
# count=0
# k=0
# while k<=3:
# sex=input('請問你的性別,m表示男性,f表示女性')
# if sex=='m':
# print('歡迎加入球隊')
# count+=1
# k+=1
# else:
# print('很遺憾,你不能加入球隊')
# print(count)