溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python把字符串轉(zhuǎn)化成數(shù)字的方法

發(fā)布時(shí)間:2020-08-03 17:03:31 來(lái)源:億速云 閱讀:936 作者:清晨 欄目:編程語(yǔ)言

這篇文章將為大家詳細(xì)講解有關(guān)python把字符串轉(zhuǎn)化成數(shù)字的方法,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

python中的int函數(shù)
只能把整數(shù)字符串轉(zhuǎn)換轉(zhuǎn)換成整數(shù)
另外可用于取出float的整數(shù)部分

可以用float進(jìn)行轉(zhuǎn)換

測(cè)試用例:

>>> s1='123'
>>> s2='1.23'
>>> s3=''
>>> s4=None
>>> int(s1)123
>>> int(s2)ValueError
>>> int(s3)ValueError
>>> int(s4)TypeError
>>> float(s1)123.0
>>> float(s2)1.23
>>> float(s3)ValueError
>>> float(s4)TypeError

順便一提,float可以轉(zhuǎn)換可以轉(zhuǎn)換科學(xué)技術(shù)法的數(shù)值:

>>> float('1e3')1000.0

轉(zhuǎn)換示例:

def str_to_float( s):
  """字符串轉(zhuǎn)換為float"""
  if s is None:
    return 0.0
    try:
      return float(s)
    except Exception:
      return 0.0

對(duì)于帶百分號(hào)的數(shù)值字符串處理方法

>>> s='12%'
>>> float(s.rstrip('%'))/1000.12

對(duì)于中文字符的數(shù)值字符,可以用unicodedata進(jìn)行轉(zhuǎn)換。

>>> import unicodedata
>>> unicodedata.numeric('三')3.0
>>> unicodedata.numeric('二十一')TypeError: numeric() argument 1 must be a unicode character, not str

既名為unicodedata,所以也應(yīng)該可以對(duì)其它語(yǔ)言的數(shù)值進(jìn)行識(shí)別。

備注:報(bào)錯(cuò)信息只取了重要的部分。

關(guān)于python把字符串轉(zhuǎn)化成數(shù)字的方法就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI