【常見的內(nèi)置函數(shù)】
成都創(chuàng)新互聯(lián)專注于東西湖網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供東西湖營銷型網(wǎng)站建設(shè),東西湖網(wǎng)站制作、東西湖網(wǎng)頁設(shè)計(jì)、東西湖網(wǎng)站官網(wǎng)定制、微信小程序定制開發(fā)服務(wù),打造東西湖網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供東西湖網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
1、enumerate(iterable,start=0)
是python的內(nèi)置函數(shù),是枚舉、列舉的意思,對于一個(gè)可迭代的(iterable)/可遍歷的對象(如列表、字符串),enumerate將其組成一個(gè)索引序列,利用它可以同時(shí)獲得索引和值。
2、zip(*iterables,strict=False)
用于將可迭代的對象作為參數(shù),將對象中對應(yīng)的元素打包成一個(gè)個(gè)元組,然后返回由這些元組組成的列表。如果各個(gè)迭代器的元素個(gè)數(shù)不一致,則返回列表長度與最短的對象相同,利用*號操作符,可以將元組解壓為列表。
3、filter(function,iterable)
filter是將一個(gè)序列進(jìn)行過濾,返回迭代器的對象,去除不滿足條件的序列。
4、isinstance(object,classinfo)
是用來判斷某一個(gè)變量或者是對象是不是屬于某種類型的一個(gè)函數(shù),如果參數(shù)object是classinfo的實(shí)例,或者object是classinfo類的子類的一個(gè)實(shí)例,
返回True。如果object不是一個(gè)給定類型的的對象, 則返回結(jié)果總是False
5、eval(expression[,globals[,locals]])
用來將字符串str當(dāng)成有效的表達(dá)式來求值并返回計(jì)算結(jié)果,表達(dá)式解析參數(shù)expression并作為Python表達(dá)式進(jìn)行求值(從技術(shù)上說是一個(gè)條件列表),采用globals和locals字典作為全局和局部命名空間。
【常用的句式】
1、format字符串格式化
format把字符串當(dāng)成一個(gè)模板,通過傳入的參數(shù)進(jìn)行格式化,非常實(shí)用且強(qiáng)大。
2、連接字符串
常使用+連接兩個(gè)字符串。
3、if...else條件語句
Python條件語句是通過一條或多條語句的執(zhí)行結(jié)果(True或者False)來決定執(zhí)行的代碼塊。其中if...else語句用來執(zhí)行需要判斷的情形。
4、for...in、while循環(huán)語句
循環(huán)語句就是遍歷一個(gè)序列,循環(huán)去執(zhí)行某個(gè)操作,Python中的循環(huán)語句有for和while。
5、import導(dǎo)入其他腳本的功能
有時(shí)需要使用另一個(gè)python文件中的腳本,這其實(shí)很簡單,就像使用import關(guān)鍵字導(dǎo)入任何模塊一樣。
由程序的要求我們可以得到,找50元的5張,找5元的6張,找1元的3張??梢灾苯佑萌∮嗟炔僮魉愠鰜恚蛘哂秘澬乃枷虢鉀Q問題,但是用取余簡單。
正確代碼:
count=283
x = int(count/50)
y = int((count-x*50)/5)
z=count-(x*50)-(y*5)
print('找零{}元其中\(zhòng)n50元:{}張\n5元: {}張\n1元: {}張\n'.format(count,x,y,z))
擴(kuò)展資料:
Python的優(yōu)缺點(diǎn):
優(yōu)點(diǎn):
1、簡單,Python是一種代表簡單主義思想的語言。閱讀一個(gè)良好的Python程序就感覺像是在讀英語一樣。它使你能夠?qū)W⒂诮鉀Q問題而不是去搞明白語言本身。
2、易學(xué),Python極其容易上手,因?yàn)镻ython有極其簡單的說明文檔。
3、速度快,Python 的底層是用 C 語言寫的,很多標(biāo)準(zhǔn)庫和第三方庫也都是用 C 寫的,運(yùn)行速度非???。
4、免費(fèi)、開源,Python是FLOSS(自由/開放源碼軟件)之一。使用者可以自由地發(fā)布這個(gè)軟件的拷貝、閱讀它的源代碼、對它做改動(dòng)、把它的一部分用于新的自由軟件中。FLOSS是基于一個(gè)團(tuán)體分享知識(shí)的概念。
5、高層語言,用Python語言編寫程序的時(shí)候無需考慮諸如如何管理你的程序使用的內(nèi)存一類的底層細(xì)節(jié)。
6、可移植性,由于它的開源本質(zhì),Python已經(jīng)被移植在許多平臺(tái)上(經(jīng)過改動(dòng)使它能夠工作在不同平臺(tái)上)。
7、解釋性,一個(gè)用編譯性語言比如C或C++寫的程序可以從源文件(即C或C++語言)轉(zhuǎn)換到一個(gè)你的計(jì)算機(jī)使用的語言(二進(jìn)制代碼,即0和1)。這個(gè)過程通過編譯器和不同的標(biāo)記、選項(xiàng)完成。
8、規(guī)范的代碼,Python采用強(qiáng)制縮進(jìn)的方式使得代碼具有較好可讀性。而Python語言寫的程序不需要編譯成二進(jìn)制代碼。
缺點(diǎn):
運(yùn)行速度慢:這里是指與C和C++相比。
參考資料來源:百度百科-Python
這個(gè)題目很有意思,外國教材中的作業(yè)題目都很精彩。
因?yàn)樗鼪]有限制零錢的數(shù)量,所以只需要按從大到小的順序找錢就可以了。 這是一個(gè)取整運(yùn)算。
給你講一個(gè)原理,你自己完成細(xì)節(jié)。
假設(shè)商品價(jià)格是Y, 客戶給錢數(shù)是Z, 那么Z-Y的余數(shù)就是要找的零錢。
Z-Y的數(shù)量依次被50,20,10,5紙幣來除,如果還有小數(shù),除不盡,那么繼續(xù)使用2,1,0.25等等的硬幣去除。最終應(yīng)該剛好除盡。 為了防止浮點(diǎn)運(yùn)算誤差。可以一開始就將Z和Y乘以100,再轉(zhuǎn)換成整數(shù)。這樣就沒有問題了。
求余使用的運(yùn)算符是%,百分號。 你需要將50,20,10.。。2,1,0.25.。。等等放到一個(gè)數(shù)組里,依次除,如果余數(shù)為0,則break。
沒看懂你的需求,不過出錯(cuò)的原因是因?yàn)槌栍缅e(cuò)了,下面這樣就行了
#?-*-?coding:?cp936?-*-
def?main():
j=input("輸入價(jià)格:(元)")
zz=(1-j)*100
a1,a2=zhaolin(zz,50)
b1,b2=zhaolin(a2,20)
c1,c2=zhaolin(b2,10)
d1,d2=zhaolin(c2,5)
e1,e2=zhaolin(d2,2)
f1,f2=zhaolin(e2,1)
print?a1,b1,c1,d1,e1,f1??
def?zhaolin(x,y):
z=x/y
w=x-x/y*y
return?z,w
main()
修改了一下,應(yīng)該滿足了你的要求了。
#?-*-?coding:?cp936?-*-
def?main():
j=input("輸入價(jià)格:(元)")
zz?=?100?-?j*100
zhaolin2(zz)
#????a1,a2=zhaolin(zz,50)
#????b1,b2=zhaolin(a2,20)
#????c1,c2=zhaolin(b2,10)
#????d1,d2=zhaolin(c2,5)
#????e1,e2=zhaolin(d2,2)
#????f1,f2=zhaolin(e2,1)
#????print?a1,b1,c1,d1,e1,f1??
def?zhaolin(x,y):
z=x/y
w=x-x/y*y
return?z,w
def?zhaolin2(x):
linqian_jiao?=?[50,20,10]
for?i?in?linqian_jiao:
x_tmp?=?x/i
if?x_tmp?=?1:
x_tmp?=?int(x_tmp)
x?=?x?-?i*x_tmp
jiao?=?i/10
print?'找您'+?str(x_tmp)?+?'個(gè)'?+?str(jiao)?+?'角硬幣;'
linqian_fen?=?[5,2,1]
for?i?in?linqian_fen:
x_tmp?=?int(x//i)
if?x_tmp?=1:
x_tmp?=?int(x_tmp)
x?=?x?-?i*x_tmp
x_tmp?=?int(x_tmp)
print?'找您'+?str(x_tmp)?+?'個(gè)'?+?str(i)?+?'分硬幣;'
main()