>>'))b=int(input('b>>>'))c=int(input('c>>>'))ifa>b:if" />

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python編程學(xué)習(xí)之如何判斷3個(gè)數(shù)的大小

系統(tǒng) 1768 0

前言

大部分初學(xué)編程的人來(lái)說(shuō)剛開始都會(huì)練習(xí)判斷兩個(gè)數(shù)或者三個(gè)數(shù)的大小,來(lái)熟悉某種語(yǔ)言的特性和最基本的if,else循環(huán),當(dāng)我們學(xué)習(xí)了更高級(jí)的語(yǔ)法知識(shí)后,又會(huì)有不同的實(shí)現(xiàn)方式,比如這道練習(xí)題依次接收用戶輸入的3個(gè)數(shù),排序后打印現(xiàn)在我們來(lái)看一下在Python中都有哪些方法來(lái)實(shí)現(xiàn):

1, 采用分支結(jié)構(gòu),用最基本的if和else來(lái)實(shí)現(xiàn):

            
a = int(input('a>>>'))
b = int(input('b>>>'))
c = int(input('c>>>'))
if a>b:
 if b>c:
 print('a>b>c')
 else:
 if a>c:
  print('a>c>b')
 else:
  print('c>a>b')
elif a
            
              b>a')
 else:
 if c>a:
  print('b>c>a')
 else:
  print('b>a>c')
            
          

這可能是大部分初學(xué)編程er的第一想法,但較為繁瑣,由于我最近剛學(xué)到列表list,那么如果用list來(lái)實(shí)現(xiàn)的話方法有哪些呢

2,引入列表

            
nums = []
for i in range(3):
 nums.append(int(input('{}; '.format(i))))
if nums[0]>nums[1]:
 if nums[0]>nums[2]:
  i3 = nums[0]
  if nums[1] > nums[2]:
  i2 = nums[1]
  i1 = nums[0]
  else:
  i2 = nums[0]
  i1 = nums[1]
 else:#0<2 1<0
  i3 = nums[2]
  i2 = nums[0]
  i1 = nums[1]
else: #[0]<[1]
 if nums[0] < nums[2]:
 i1 = nums[0]
 if nums[1] < nums[2]:
  i2 = nums[1]
  i3 = nums[2]
 else:#[1]>[2]
  if nums[0] > nums[2]:
  i2 = nums[0]
  i3 = mums[2]
  else:
  i2 = nums[2]
  i3 = mums[0]
print(i1,i2,i3)
          

雖然我們?cè)谶@里用了list,但是邏輯上還是第一種逐個(gè)比較后再打印的思想,所以可以看到,并沒(méi)有變簡(jiǎn)潔。

3,使用Max函數(shù)

            
nums = []
for i in range(3):
 nums.append(int(input('{}: '.format(i))))
#此處不能使用for循環(huán),不能一邊迭代該列表,同時(shí)刪除或者增加該列表
while True:
 x = max(nums)
 print(x)
 nums.remove(x)
 if len(nums) == 1:
 print(nums[0])
 break
          

這種方法的思路是找出最大值,打印再剔除,直到最后打印出最小值。這樣的話我們就能以較少的代碼來(lái)實(shí)現(xiàn)這一任務(wù)了。max函數(shù)和min函數(shù)是Python的內(nèi)置函數(shù),在求最大值和最小值上更快速便捷。但當(dāng)我們需要比較并打印出很多的數(shù)字時(shí),這種方法就沒(méi)那么高效了。

4,用列表的sort操作來(lái)實(shí)現(xiàn)大小比較并打印輸出

sort(key=None, reverse=False) -> None

對(duì)列表元素進(jìn)行排序,就地修改,默認(rèn)升序

            
nums = []
out = None
for i in range(3):
 nums.append(int(input('{}: '.format(i))))
nums.sort()
print(nums)
          

這一次可以看到,代碼簡(jiǎn)潔了很多,而且即便我們需要增加輸入量,比較多個(gè)數(shù)據(jù)也只需要做很少的改動(dòng)即可。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 寿阳县| 封丘县| 清流县| 会东县| 阆中市| 都安| 嘉善县| 黑山县| 上栗县| 石首市| 五大连池市| 新晃| 昌宁县| 双流县| 奉化市| 陇西县| 广昌县| 晋州市| 宜州市| 花莲县| 南丰县| 德江县| 丰原市| 黄冈市| 大姚县| 左云县| 信宜市| 日喀则市| 本溪市| 台南县| 化隆| 北宁市| 和顺县| 博客| 内丘县| 临夏县| 筠连县| 青川县| 夏津县| 石首市| 磐石市|