數據類型判斷
在python(版本3.0以上)使用變量,并進行值比較時。有時候會出現以下錯誤:
TypeError: unorderable types: NoneType() < int()
或者類似的類型錯誤。
這是因為一方變量的數據類型不明(python無法判斷),所以出錯。
在一般情況下,可以提前對要使用的變量進行定義并賦值,例如:
var=' ' 或者 var=0
等等。
但是,若變量在比較前,是通過調用函數或者其他表達式賦值的,以上方法可能行不通,因為如果調用的函數如果存在錯誤或者沒有輸出或者輸出類型不對,都會出現類型錯誤。
所以可以在比較之前進行變量的類型判斷,格式:
import types
type(x) is types.IntType
或者
type(x) is types.StringType
以上是判斷變量的數據類型是整形還是字符串類型。使用判斷語句,如果數據類型正確,則進行變量比較。
if type(x) is types.IntType:
var1<var2
建議出現此錯誤時,先查看自己的程序的每一步是否出錯。
列表腳本操作
列表對 + 和 * 的操作符與字符串相似。+ 號用于組合列表,* 號用于重復列表。
對于組合操作,還可以進行以下操作得到:
a=[]
b=[1,2,3,4,5,6,7,8,9,0]
a.append(b[i:j]+b[j+1:k]+[b[k+1]-m])
如下實例
在這個程序中加號+兩邊任然是列表類型數據,所以是組合操作。
而以下操作中,加號+前一個是列表,后一個是單一的數,類型不一致,所以出錯。
對于單一的數值,可以通過添加 [ ] 使其變為列表類型,即 [a[2]]。
對于字符串的操作與以上是一樣的。
這種操作可以用在循環中,作為動態數存儲于讀取使用。
注意
以下的操作以以上的操作不一樣,以下操作是對數的加法運算。
a.append(b[i]+b[j])
以上這篇淺談Python數據類型判斷及列表腳本操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答