參考學習後給出兩個解決辦法。
首先input()函式返回的是乙個字串,如果你需要的不是數字,而是賦值字串的話,你可以這樣寫:a,b,c = input().split()
具體解釋如下
>>
> a =
input()
# input()返回的是字串
121332
>>
> a
'121332'
# 返回的是字串
# 所以要多個賦值的話,需要對字串進行分割,並返回列表,再進行賦值
# 我們採用str.split()方法進行分割,返回列表,如果不給出str.split()引數,預設是空格切割
>>
> f =
'abcdabcdabcd'
>>
> f.split(
'c')
# 以字元『c'為切割標誌,返回乙個列表
['ab'
,'dab'
,'dab'
,'d'
]# 最後就是多重賦值了,a,b,c = ['1','2','3'] 相當於 a = '1'; b = '2'; c = '3'
>>
> a,b,c =
input()
.split()1
23>>
>
print
(a,b,c)12
3
接下來解決我們的問題,要變為數字賦值,解決方案也比較簡單,就是把字串變為int。
這裡給出兩種方法:
a,b,c = map(int, input().split())
map(fun,seq)方法簡單的說就是用fun這個功能函式去依次作用於序列seq中的每個元素,然後返回乙個可迭代物件。
>>
> a,b,c =
map(
int,
input()
.split())
123>>
>
print
(a,b,c)12
3
a, b,c = [int(x) for x in input().split()]
簡單的解釋這個列表推導式就是把input().split()返回的列表中的每乙個元素通過遍歷,依次用int()函式處理。
>>
> a, b,c =
[int
(x)for x in
input()
.split()]
123>>
>
print
(a,b,c)12
3
注意以上的int,int()都可以用其他需要的資料型別替代,如float,float()等。 python3 實現一行輸入,空格隔開的示例
相信很多人都會使用 a input b input 來進行輸入操作,但是,這是以換行進行操作的,而有些題目是www.cppcns.com需要進行一行輸入,空格隔開的,這時候就需要變換輸入方式了。那麼怎麼辦呢?我們可以這樣寫 a,b map int,input s程式設計客棧plit 這樣就實現了一行...
python3 讀取txt文字最後一行
首先要理解txt文字都是實際由位元組組成的,比如對於乙個utf 8無bom編碼方式儲存的txt檔案,如果檔案內容為空,那麼該txt檔案大小為0位元組,乙個ascii字元佔乙個位元組,乙個中文字元佔3個位元組。1q 付 比如utf 8無bom編碼方式儲存的txt檔案,文字內容如上,那麼該檔案的大小則為...
python 3 跳過第一行(多行)讀入資料
查了下資料,常見兩種辦法,一是設定行號,再者是利用python自帶的itertools工具。這裡推薦一種新的方法,直接使用readline 函式就搞定。示例 1 第1行 id1 2第2行 id2 3第3行 id3 4第4行 id4 5第5行 id5 6第6行 id6 7第7行 id7 8第8行 id...