如果我有一個字符串'x=10'
,我怎樣才能提取10作爲一個整數使用一行代碼?Python字符串拆分
回答
檢查這一項:
answer = int("x=10".partition("=")[2])
>>> s = "x=10"
>>> int(s.split('=')[-1])
10
s = 'x=10'
i = int(s[2:])
肯定的:
a = "x=10"
b = int(a.split('=')[1])
result = int(my_string.rpartition("=")[-1])
但是請注意,如果有別的後=
簽名功能打破。
所以x=10
,x=560
和x=1010001003010
都將工作。但是,y=1,341
將會破壞ValueError。
ValueError: invalid literal for int() with base 10: '1,341'
編輯: 事實上,pitrou的使用split
,甚至更好,因爲你可能不能保證會有要麼只有一個=
標誌。
而且還修復了partition
與rpartition
問題。
爲了說明'x = y = 500'之類的可能性,我會使用'rpartition'而不是'partition'。 – jcdyer 2010-01-04 15:52:35
** OP沒有這樣的問題**。隨着你的態度,我們將得到解析隨機二進制斑點,因爲這些*數字*不能保證在字符串結尾,不保證是數字,不保證是ASCII字符串。 – SilentGhost 2010-01-04 16:31:11
@SilentGhost - 絕對正確。我並沒有試圖建議他的代碼**應該足夠強大,以處理'1,341',只是指出它不會。謹慎的提示,而不是建議需要更「強大」的解決方案。 – 2010-01-04 17:12:23
- 1. 拆分字符串在python
- 2. Python字符串拆分
- 3. Python字符串拆分
- 4. Python拆分字符串
- 5. Python的字符串拆分
- 6. 拆分標識符字符串python
- 7. 用Java拆分Python字典字符串
- 8. Elisp拆分字符串函數來拆分字符串。字符
- 9. 的Python拆分字符串多字符分隔符
- 10. 拆分Python字符串由單引號
- 11. python拆分字符串上的空白
- 12. 的Python拆分字符串忽略\」
- 13. python Unicode字符串拆分/ json轉換
- 14. Python - 拆分字符串並返回int
- 15. 一個字符串的Python拆分值
- 16. Python中的字符串拆分
- 17. Python字符串剝離和拆分
- 18. python - 索引一個拆分字符串
- 19. Python字符串拆分 - 屬性錯誤
- 20. 拆分與Python字符串重新
- 21. Python字符串拆分^ \不工作
- 22. 在Python中拆分字符串
- 23. C#拆分字符串 - 將字符串拆分爲數組
- 24. 拆分字符串與拆分方法
- 25. 拆分字符串沒有拆分器
- 26. 在具有多個拆分器的python中拆分字符串
- 27. 拆分字符串在字
- 28. 從字符串拆分字符串
- 29. 用字符串拆分字符串?
- 30. 將字符串拆分爲字符串
我給你一個提示:split,int,len,assert – 2010-01-04 15:32:46
「一行」並不重要,但我理解你的意思是簡單明瞭的代碼。 – 2010-01-04 15:41:06
沒有不作功,只是想學python – mikip 2010-01-05 09:01:45