獲取輸入)
之前做測(cè)試筆試的時(shí)候有很長(zhǎng)一段時(shí)間不清楚怎么從鍵盤(pán)獲取多個(gè)值的輸入終于一時(shí)興起將各種情況下獲取輸入數(shù)值的方法進(jìn)行了歸納希望對(duì)剛好看到的您有幫助。一、輸入為一個(gè)值需要注意input()返回的是字符串類(lèi)型因此讀取數(shù)字時(shí)需要進(jìn)行類(lèi)型轉(zhuǎn)換b int(input(請(qǐng)輸入b:)) print(type(b),b)運(yùn)行結(jié)果請(qǐng)輸入b:2class int 2二、 輸入為2、3個(gè)這類(lèi)比較少的可以一個(gè)個(gè)接收的數(shù)值接收后為字符串類(lèi)型input()結(jié)合str.split()方法需要注意str.split()方法返回的是列表類(lèi)型m, n input(請(qǐng)輸入m和n:).split( ) print(m和n的值分別為{0},{1},它們是字符串類(lèi)型.format(m,n))運(yùn)行結(jié)果這里相當(dāng)于字符串1 2經(jīng)過(guò)split()方法用 空格分割后返回的是列表[‘1’, ‘2’]。其中m1、n2請(qǐng)輸入m和n:1 2m和n的值分別為1,2,它們是字符串類(lèi)型三、 輸入為2、3個(gè)這類(lèi)比較少的可以一個(gè)個(gè)接收的數(shù)值接收后為整數(shù)類(lèi)型方法1利用map(fun,seq)函數(shù)。下面的int可以用其他類(lèi)型如float替代m, n map(int, input(請(qǐng)輸入m和n:).split( )) print(m和n的值分別為{0},{1},它們是int整數(shù)類(lèi)型.format(m,n))運(yùn)行結(jié)果請(qǐng)輸入m和n:1 2m和n的值分別為1,2,它們是int整數(shù)類(lèi)型方法2直接利用列表推導(dǎo)式。下面的int可以用其他類(lèi)型如float替代m, n [int(x) for x in input(請(qǐng)輸入m和n:).split( )] print(m和n的值分別為{0},{1},它們是int整數(shù)類(lèi)型.format(m,n))運(yùn)行結(jié)果請(qǐng)輸入m和n:1 2m和n的值分別為1,2,它們是int整數(shù)類(lèi)型四、一行n個(gè)值的輸入個(gè)數(shù)未知方法1 結(jié)果為str類(lèi)型list input(請(qǐng)輸入).split() print(type(list), list) #class list [1, 2, 3] for i in list: print(type(i), i)運(yùn)行結(jié)果請(qǐng)輸入1 2 3class list [1, 2, 3]class str 1class str 2class str 3如果需要的輸入為其他形式應(yīng)當(dāng)在遍歷的同時(shí)進(jìn)行類(lèi)型轉(zhuǎn)換 。方法2結(jié)果為int類(lèi)型a list(map(int,input(請(qǐng)輸入).split())) print(type(a), a) for i in a: print(type(i), i)運(yùn)行結(jié)果請(qǐng)輸入1 2 3class list [1, 2, 3]class int 1class int 2class int 3五、已知行數(shù)的多行輸入1需要的輸入為字符串形式text lines int(input(輸入行數(shù))) for i in range(lines): text input() print(text) #接收的輸入為字符串形式運(yùn)行結(jié)果輸入行數(shù)21234561234562 如果需要的輸入為列表形式則可以在這個(gè)字符串基礎(chǔ)上將這個(gè)沒(méi)有逗號(hào)或空格的字符拆分a list(text) print(a) #接收的輸入為列表形式此時(shí)結(jié)果為[1, 2, 3, 4, 5, 6]3如果需要的輸入為數(shù)字形式則可以繼續(xù)將這個(gè)列表轉(zhuǎn)換為數(shù)字將列表中的元素轉(zhuǎn)換成數(shù)字的幾種方法方法1使用join的方法a [1, 2, 3] b .join(a) print(b)輸出1 2 3方法2使用列表生成式進(jìn)行轉(zhuǎn)換a [1, 2, 3] b [int(x) for x in a] #此時(shí)b的結(jié)果為[1, 2, 3] for i in b: print(i,end )輸出1 2 3