av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Python 實(shí)現(xiàn)使用空值進(jìn)行賦值 None

瀏覽:3日期:2022-08-02 14:23:03

0.摘要

在Python中,尤其是數(shù)組當(dāng)中,對(duì)于一些異常值往往需要進(jìn)行特殊處理。為了防止異常值與正常數(shù)據(jù)混淆,影響最終計(jì)算結(jié)果,常用的方法是將異常值置零或者置空。置零的方法較為簡(jiǎn)單,本文主要介紹如果對(duì)python中的數(shù)據(jù)進(jìn)行置空。

1.賦值為None

對(duì)于一般數(shù)據(jù),可以直接為其賦值為None。

i = 1i = None # int 型數(shù)據(jù)置空s = 'string's = None # 字符串型數(shù)據(jù)置空l(shuí) = [1,2,3,4]l[2] = None # 列表中元素置空print(i, s, l)

Python 實(shí)現(xiàn)使用空值進(jìn)行賦值 None

2.numpy類型

numpy 中的數(shù)據(jù)較為特殊,如果將一個(gè)int 型元素賦值為None,或者np.nan都會(huì)產(chǎn)生報(bào)錯(cuò):

a = np.arange(10)a[2] = None

Python 實(shí)現(xiàn)使用空值進(jìn)行賦值 None

a = np.arange(10)a[2] = np.nan

Python 實(shí)現(xiàn)使用空值進(jìn)行賦值 None

如果打印np.nan的類型,會(huì)發(fā)現(xiàn)np.nan是float類型的。

>>> type(np.nan)<class ’float’>

在numpy數(shù)組中,將int型元素賦值為float類型,是不合法的。賦值語(yǔ)句不會(huì)報(bào)錯(cuò),但numpy會(huì)自動(dòng)將float類型轉(zhuǎn)為int型。

而打印None類型,會(huì)發(fā)現(xiàn)None沒(méi)有類型。

>>> type(None)<class ’NoneType’>

賦值報(bào)錯(cuò)的原因,個(gè)人認(rèn)為是:numpy判斷類型不符,但也無(wú)法完成類型轉(zhuǎn)換,所以產(chǎn)生了報(bào)錯(cuò)。

在numpy中,如果想將某一元素賦值為None或者這np.nan,可以先將數(shù)組轉(zhuǎn)換為float類型。

a = np.arange(10, dtype=float)a[2] = np.nana[3] = Noneprint(a)

Python 實(shí)現(xiàn)使用空值進(jìn)行賦值 None

從最終結(jié)果上看,不論是np.nan,還是None,在numpy中都以nan的形式出現(xiàn)。

補(bǔ)充知識(shí):Python 類型判斷 變量存在判斷 None與空字符串 is和==區(qū)別 nan inf判斷

一、類型變量

type

#判斷是否為整數(shù)type(varObj) is types.IntType StringType FloatType DictType TupleType ListType BooleanType

isinstance

isinstance(aaa,str)

type與isinstance區(qū)別

class A: passclass B(A): passisinstance(A(), A) # returns Truetype(A()) == A # returns Trueisinstance(B(), A) # returns Truetype(B()) == A # returns False

二、變量存在

異常捕獲

try: print self.fileReadOpen except Exception: pass else: del self.fileReadOpen

def isset(v): try : type (eval(v)) except : return 0 else : return 1

isset(’varname’) //變量只能在try里調(diào)用才會(huì)捕獲異常,所以采用字符串參數(shù)。

命名空間

’varname’ in locals().keys()’varname’ in dir()

dir()不帶參數(shù)時(shí),返回當(dāng)前范圍內(nèi)的變量、方法和定義的類型列表;帶參數(shù)時(shí),返回參數(shù)的屬性、方法列表。如果參數(shù)包含方法dir(),該方法將被調(diào)用。如果參數(shù)不包含dir(),該方法將最大限度地收集參數(shù)信息。

三、None與空字符串

有句話說(shuō)的Python中萬(wàn)物皆為對(duì)象。None也是對(duì)象。這就好理解None與空字符串NULL區(qū)別:

type(None)<class ’NoneType’>type(’’)<class ’’str’>>>> None == 0 //(int)False>>> None == ’ ’ //(str)False>>> None == False //(boolean)False

四、is和==區(qū)別

is判斷的是a對(duì)象是否就是b對(duì)象,是通過(guò)id來(lái)判斷的。

==判斷的是a對(duì)象的值是否和b對(duì)象的值相等,是通過(guò)value來(lái)判斷的。

>>> d = {'a':1}>>> dd = d.copy()>>> d is ddFalse>>> d == ddTrue

五、nan inf

記憶:對(duì)于is判斷,符合is的對(duì)象比較定義:對(duì)象is對(duì)象本身,對(duì)象不is新建對(duì)象。對(duì)于==判斷,除了nan,符合==的值比較的定義。對(duì)于nan在用==值比較時(shí),可以認(rèn)為,nan對(duì)象的值不==該nan對(duì)象的值,nan對(duì)象的值不==新建nan對(duì)象的值。

>>> inf = float('inf')>>> ninf = float('-inf')>>> nan = float('nan')>>> inf is infTrue>>> ninf is ninfTrue>>> nan is nanTrue>>> inf == infTrue>>> ninf == ninfTrue>>> nan == nan // nan對(duì)象時(shí)本身對(duì)象nanFalse>>> inf is float('inf')False>>> ninf is float('-inf')False>>> nan is float('nan')False>>> inf == float('inf')True>>> ninf == float('-inf')True>>> nan == float('nan') //前一個(gè)nan值不等于新建對(duì)象float('nan')的值False

判斷nan方法:

使用math模塊:

>>> import math>>> math.isinf(inf)True>>> math.isinf(ninf)True>>> math.isnan(nan)True>>> math.isinf(float('inf'))True>>> math.isinf(float('-inf'))True>>> math.isnan(float('nan'))True

利用自身判斷:

>>> def isnan(num): return num != num>>> isnan(float('nan'))True

使用numpy:

>>> import numpy as np>>> >>> np.isnan(np.nan)True>>> np.isnan(float('nan'))True>>> np.isnan(float('inf'))False

以上這篇Python 實(shí)現(xiàn)使用空值進(jìn)行賦值 None就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 青青草免费在线视频 | 欧美激情免费在线 | 国产h在线| 精品国产18久久久久久二百 | 中文字幕亚洲精品在线观看 | 国产人成精品一区二区三 | 精品欧美乱码久久久久久 | 99精品国产一区二区三区 | 一区二区成人 | 亚洲一区视频在线 | 性大毛片视频 | 国产福利91精品一区二区三区 | 日本在线视频一区二区 | 一级毛片免费视频观看 | 成年人黄色一级毛片 | 精品视频一区二区三区在线观看 | 国产一区二区在线视频 | 国产精品a久久久久 | 羞羞视频网页 | 国产高清视频一区 | 欧美日韩国产一区二区 | 亚洲精品免费视频 | 九九热这里只有精品在线观看 | 欧美激情视频一区二区三区在线播放 | 久久精品亚洲精品国产欧美 | 亚洲图片一区二区三区 | 免费视频一区二区 | 黑人一级片视频 | 一区二区免费在线视频 | 在线观看中文字幕一区二区 | 国产激情视频在线观看 | 久久精品亚洲国产 | 国产伦精品一区二区三区照片91 | 综合伊人| 国产999精品久久久 日本视频一区二区三区 | 久久国产精品99久久久久久丝袜 | 青青草一区二区 | 嫩草视频在线看 | 精品国产乱码久久久久久久久 | 久久精品色欧美aⅴ一区二区 | 久久免费精品视频 |