Python 100例實戰(zhàn)訓(xùn)練——day01

      網(wǎng)友投稿 781 2022-05-29

      參考資料:Python 100例

      Python 練習(xí)實例1

      Python 100例題目:有四個數(shù)字:1、2、3、4,能組成多少個互不相同且無重復(fù)數(shù)字的三位數(shù)?各是多少? 程序分析:可填在百位、十位、個位的數(shù)字都是1、2、3、4。組成所有的排列后再去掉不滿足條件的排列。

      解法一:

      # 基礎(chǔ)解法,循環(huán)嵌套 l = [] for i in range(1,5): for j in range(1,5): for k in range(1,5): if( i != k ) and (i != j) and (j != k): a = 100*i+10*j+k l.append(a) print(f"共有{len(l)}個",l)

      解法二:

      Python 100例實戰(zhàn)訓(xùn)練——day01

      # 調(diào)用第三方庫,排列組合 # # 組合 # from scipy.special import comb # # 階乘 # from scipy.special import factoral # 排列 from scipy.special import perm print( perm(4,3)) # 從序列中取2個元素進行組合、元素不允許重復(fù) import itertools as it for e in it.permutations('1234', 3): print(''.join(e), end=', ')

      itertools的使用可參考:Python的排列組合函數(shù)

      Python 練習(xí)實例2

      Python 100例題目:企業(yè)發(fā)放的獎金根據(jù)利潤提成。 利潤(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%提成; 從鍵盤輸入當(dāng)月利潤I,求應(yīng)發(fā)放獎金總數(shù)? 程序分析:請利用數(shù)軸來分界,定位。注意定義時需把獎金定義成長整型。

      解法一:

      # 基礎(chǔ)版 if判斷 i = int(input('凈利潤(萬元):')) if i <=10: account = i*10/100 elif i <=20: account = (i-10)*7.5/100+10*10/100 elif i <=40: account = (i-20)*5/100+10*7.5/100+10*10/100 elif i<=60: account = (i-40)*3/100+20*5/100+10*7.5/100+10*10/100 elif i <=100: account = (i-60)*1.5/100+20*3/100+20*5/100+20*7.5/100+10*10/100 else: account = (i-100)*1/100+40*1.5/100+20*3/100+20*5/100+10*7.5/100+10*10/100 print(f"利潤提成{account}")

      解法二:

      # 數(shù)軸定位 i = int(input('凈利潤(萬元):')) arr = [100,60,40,20,10,0] rat = [0.01,0.015,0.03,0.05,0.075,0.1] r = 0 for idx in range(0,6): if i>arr[idx]: r+=(i-arr[idx])*rat[idx] print ((i-arr[idx])*rat[idx]) i=arr[idx] print (r)

      解法三:

      # cut 區(qū)間切分===》邏輯有點兒復(fù)雜,主要是想給大家介紹下pandas的cut函數(shù),數(shù)據(jù)切分,解決這個問題比較復(fù)雜,用在其他問題上還是比較方便的 import pandas as pd # 數(shù)軸定位 I= int(input('凈利潤(萬元):')) bins = [0, 11, 21, 41, 61, 101,1000000000000] #1000000000000 bins要比labels多一個,選一個特別大的數(shù) rats = [0.1, 0.075, 0.05, 0.03, 0.015, 0.01] par = [10,10,20,20,40,"nan"] df = pd.DataFrame(list(zip(bins,rats,par)),columns=["區(qū)間下限","點數(shù)","參數(shù)"]) labels = df.index.to_list() idx = pd.cut([I],bins,labels=labels,right= True)[0] account = 0 for i in range(idx): rate0 = df.iloc[i,1] parm0 = df.iloc[i,2] account += rate0*parm0 # print(account) account = account + (I-df.iloc[idx,0]+1)*df.iloc[idx,1] print(account)

      Python 機器學(xué)習(xí)

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:OpenCV基本操作——OpenCV安裝及圖片讀取
      下一篇:9.16 Linux修改文件或目錄的隱藏屬性(chattr命令)
      相關(guān)文章
      亚洲国产中文在线二区三区免| 无码乱人伦一区二区亚洲| 91亚洲精品视频| 亚洲一区无码中文字幕| 亚洲成A人片在线观看中文| 国产午夜亚洲精品不卡| 亚洲va中文字幕| 亚洲欧美成人综合久久久| 亚洲综合偷自成人网第页色| 亚洲中文字幕久久精品无码2021| 亚洲精品一区二区三区四区乱码| 色拍自拍亚洲综合图区| 久久久无码精品亚洲日韩京东传媒| 亚洲成a人片77777老司机| 久久亚洲精品成人| 亚洲性天天干天天摸| 久久精品国产亚洲AV麻豆网站| 日产亚洲一区二区三区| 老司机亚洲精品影院| 亚洲综合亚洲国产尤物| 亚洲无圣光一区二区| 亚洲一区二区三区免费在线观看 | 精品久久久久久亚洲综合网| 精品无码专区亚洲| 亚洲VA综合VA国产产VA中| 国产a v无码专区亚洲av| 亚洲一区爱区精品无码| 亚洲av无码一区二区三区不卡| 亚洲电影一区二区三区| 亚洲神级电影国语版| 亚洲人成电影网站| 亚洲色成人网站WWW永久四虎 | 亚洲一区二区三区成人网站 | 亚洲国产精品VA在线看黑人| 无码欧精品亚洲日韩一区| 亚洲国产美女精品久久| 亚洲综合欧美色五月俺也去| 337p日本欧洲亚洲大胆人人| 亚洲午夜日韩高清一区| 亚洲αv在线精品糸列| 亚洲精品在线免费观看视频|