本題要求將輸入的任意3個(gè)整數(shù)從小到大輸出。
十多年的復(fù)興網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營銷的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整復(fù)興建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“復(fù)興網(wǎng)站設(shè)計(jì)”,“復(fù)興網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
輸入格式:
輸入在一行中給出3個(gè)整數(shù),其間以空格分隔。
輸出格式:
在一行中將3個(gè)整數(shù)從小到大輸出,其間以“-”相連。
輸入樣例:
4 2 8
輸出樣例:
2-4-8
代碼如下:
a = list(map(int,input().split()))#map(函數(shù),序列,...)a.sort()#對(duì)列表進(jìn)行升序排序for i in range(len(a)-1):#遍歷并排序后的列表
print(f'{a[i]}-',end='')#輸出列表的前n-1項(xiàng),并輸出-print(f'{a[len(a)-1]}')#輸出第n項(xiàng)
劃重點(diǎn)( ̄︶ ̄)↗?。?/p>
map()函數(shù)提供的函數(shù)對(duì)指定序列做映射。
map() 函數(shù)語法:
map(function, iterable, …)
function 以參數(shù)序列中的每一個(gè)元素調(diào)用 function 函數(shù),返回包含每次 function 函數(shù)返回值的新列表,iterable 表示 一個(gè)或多個(gè)序列
end=’’()函數(shù)會(huì)關(guān)閉“在輸出中自動(dòng)包含換行”的默認(rèn)行為,只有Python3有用,Python2不支持。print默認(rèn)是打印一行,結(jié)尾加換行。
end=’ '意思是末尾不換行。
len()訪問列表長度(數(shù)據(jù)個(gè)數(shù))
list()函數(shù)創(chuàng)建列表
sort()函數(shù)
列表序列.sort(key=None, reverse= False)
reverse表示排序規(guī)則,reverse=True降序,reverse= False升序(默認(rèn))
列表序列.sort()此處默認(rèn)為升序排列
哈嘍,小朋友們,今天酷酷老師帶大家用C語言、Python、Scratch語言這三種不同的編程語言來比較三個(gè)數(shù)的大小。你們準(zhǔn)備好小本本,和老師一起學(xué)習(xí)了嗎?
首先我們先來看一下C語言中如何比較三個(gè)數(shù)的大?。?/p>
這是最容易理解的方法在之前判斷兩個(gè)數(shù)大小的基礎(chǔ)上,在if語句中嵌套一個(gè)if語句,經(jīng)過多次判斷得出最大數(shù)。這樣可以再引用函數(shù)中將引用的函數(shù)變?yōu)閙ax(a,b,c)或者在比較兩個(gè)數(shù)的函數(shù)在主程序里變?yōu)閙ax=max(max(a,b),c)下面介紹一個(gè)三元運(yùn)算符,這個(gè)運(yùn)算符會(huì)使程序進(jìn)一步簡化,而且看起來更加的直觀。
它的一般形式如下:
表達(dá)式1? 表達(dá)式2:表達(dá)式3;
? 表達(dá)式的值是由 表達(dá)式1 決定的。如果 表達(dá)式1 為真,則計(jì)算表達(dá)式2 的值,結(jié)果即為整個(gè) ? 表達(dá)式的值。如果表達(dá)式1 為假,則計(jì)算表達(dá)式3 的值,結(jié)果即為整個(gè) ? 表達(dá)式的值。
程序如下:
接下來我們再來看看python語言解決三個(gè)數(shù)比較大小的問題:
我們可以看到,利用python的代碼解決比較大小的思路上與C語言解決起來是一樣的,但是python語言更加的簡潔,也不像C語言那么重視格式,所以對(duì)于少兒來說,python語言更加容易學(xué)習(xí)。
那么接下來我們看看最適合少兒學(xué)習(xí)的Scratch是如何解決三個(gè)數(shù)比較大小的問題的呢?
程序如下:
我們可以從圖中的積木塊看出來,在進(jìn)行Scratch代碼編寫的時(shí)候,其實(shí)思路就是一種編程的思路,所以對(duì)于想要學(xué)習(xí)少兒編程的年齡小一點(diǎn)的同學(xué)來說,學(xué)習(xí)Scratch可以當(dāng)作開始學(xué)習(xí)編程的基礎(chǔ)。
小朋友們,請(qǐng)自己嘗試一下吧,看看設(shè)計(jì)的過程中會(huì)遇到哪些問題呢?歡迎隨時(shí)和酷酷老師分享哦~
方法用錯(cuò)了, 首先不能是DataFrame的applymap方法 這個(gè)方法是對(duì)每一個(gè)元素進(jìn)行處理的
其次, 處理函數(shù)(你的func_wd)是接受一個(gè)值, 返回一個(gè)值, 不是接受一堆值然后循環(huán)
def func_wd(x) 這個(gè)x就是wd那一列中的某一個(gè)值, 里面直接分支返回就行了:
在map這個(gè)方法的時(shí)候, 用Series的apply:
data['wd'] = data['wd'].apply(fuc_wd)
這樣就行了
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave','B', 10)]
print(sorted(students,key=lambda s: s[0]))
key指定一個(gè)接收一個(gè)參數(shù)的函數(shù),這個(gè)函數(shù)用于從每個(gè)元素中提取一個(gè)用于比較的關(guān)鍵字。默認(rèn)值為None
例子
為啥會(huì)這樣呢?默認(rèn)不是應(yīng)該按升序排列。
仔細(xì)看 我們lambda返回的是一個(gè)元祖,(布爾,布爾,絕對(duì)值)
由于key函數(shù)主要作用是根據(jù)我們自己的要求,取出指定的元素來進(jìn)行排序,不過我們現(xiàn)在返回的是一個(gè)元祖,所以我們首先按布爾進(jìn)行排序,當(dāng)有相同的我們在往后面一個(gè)元素找,然后進(jìn)行排序,所以就變成這樣了。