亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在python中接受逗號分隔的數字以及拆分空格

在python中接受逗號分隔的數字以及拆分空格

肥皂起泡泡 2021-06-15 13:02:41
我正在嘗試接受由逗號分隔的整數序列,并希望修剪隨之而來的任何空格。我正在使用下面的代碼。values = raw_input("Input some comma seprated numbers : ")print "Values are", valuesArr = values.split(",")print "Arr is", Arra = [int(x) for x in Arr.split()]print "a is", a在執行上面的代碼片段時,我收到以下異常,$ python accept.pyInput some comma seprated numbers : 1,3, 2Values are 1,3, 2Arr is ['1', '3', ' 2']Traceback (most recent call last):  File "accept.py", line 20, in <module>    a = int(Arr)TypeError: int() argument must be a string or a number, not 'list'如果我提供諸如 1,3,2 或 1 3 2 之類的輸入,我可以通過更改代碼來成功。但如果我將兩者混合使用,就會出現問題。使用 Python 版本 2。(不介意 Python3 解決方案 :))
查看完整描述

2 回答

?
搖曳的薔薇

TA貢獻1793條經驗 獲得超6個贊

示例輸出與您提供的代碼片段不匹配,因為錯誤行是a = int(Arr). 在示例代碼中還有一個split()on Arr,它應該引發一個AttributeError,因為Arr它已經是一個列表。


要從字符串的開頭/結尾刪除空格,請使用strip()方法:


l = values.split(",")

a = [int(x.strip()) for x in l]

ValueError 如果數組包含無法轉換為整數的字符串,包括數字之間有空格時,則會引發。


如果要刪除所有空格,包括數字之間的空格(將“1 2 3”變為“123”),可以使用類似[src] 的內容:


l = "".join(values.split())

a = [int(x.strip()) for x in l.split(",")]


查看完整回答
反對 回復 2021-06-22
  • 2 回答
  • 0 關注
  • 360 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號