Python 中None怎麼用?

時間 2022-01-18 02:36:40

1樓:程式獵人

首先,你的提問中有一處有歧義,先澄清一下。

你這裡提到的不輸入值,不知道是說直接按回車還是按Ctrl-D(UNIX)或Ctrl-Z(Win)來產生乙個EOF結束輸入呢?

那麼,如果是按回車,輸入值將成為空字串 '',如果是EOF,則會有乙個 EOFError從input()函式丟擲。

前者既然你知道是空字串了,那就把對 None的判斷改成 ''即可,或者也可以直接

ifnot

new_name

:反正 None和''都會自動被判定為 False 。另外, else部分不要也行。

如果是後者,則要加乙個 try-except了。

try:

new_name = input(':')

except EOFError:

new_name = '5'

至於問題標題裡的 None那麼用, 嗯……其實,就跟普通常量一樣用法就行了……重要的是搞清楚什麼時候會返回 None。

2樓:即將甦醒的Python

1.None是乙個空值,空值是Python裡的乙個特殊值,用None表示。可以將None賦值給任何變數。

var = None; print(var) # None

if var is None:

print("var has a value of None") # print

else:

print("var:", var)

2.None有自己的資料型別,它屬於NoneType型別。None是NoneType資料型別的唯一值。

print(type(None)) #

3.None不等於空字串、空列表、0,也不等同於False。

a = ''; print(a == None) # False

b = ; print(b == None) # False

c = 0; print(c == None) # False

d = False; print(c == None) # False

4.None是乙個特殊的空物件,可以用來佔位。

L = [None] * 5; print(L) # [None, None, None, None, None]

5.對於定義的函式,如果沒有return語句,在Python中會返回None;如果有不帶值的return語句,那麼也是返回None。

def func():

x = 3

obj = func(); print(obj) # None

def func2():

return None

obj2 = func2(); print(obj2) # None

def func3():

return

obj3 = func3(); print(obj3) # None

6.對於定義的函式,如果預設引數是乙個可修改的容器如列表、集合或字典,可以使用None作為預設值。

def func4(x, y=None):

if y is not Noneprint("y:", y)

elseprint("y is None")

print("x:", x)

x = [1, 2]; obj4 = func4(x) # y is None

y = [3, 4]; obj4 = func4(x, y) # y: [3, 4]

3樓:肖肖肖肖不敢實名

new_name

=input

(":")if

new_name

:new_name

="5"

else

:pass

這樣就可以了,因為空字串轉義成Boolean值時會被認為時False

4樓:風雨

那說明你的 new_name 在任何情況下都不是 none 呀

5樓:Lemon1x

看樣子你應該學過其他語言,其他語言無輸入確實會返回如null undefined false等值,但Python無輸入返回的是空字串。

一般None用的不多,實際應用中一般用於函式的預設引數,或者函式沒寫返回值,直譯器就預設返回None。

Python在資料分析中怎麼用?

Python資料分析 Python日期和時間處理及操作時間序列分類 時間戳 timestamp 特定的時刻 固定週期 period 某月或某年 時間間隔 interval 由起始時間戳和結束時間戳表示datetime,time及calendar模組 datetime 以毫秒形式儲存時間和日期date...

小白求解 Python中 doc 是怎麼用的?

一心月 我剛才看書看到這裡,也是好奇如何使用,搜尋無果,靈機一動,懂了!def f i,s,l i必須是int型,s必須是str型,l必須是list型 if type i int print int else print ERROR if type s str print str else prin...

python中EasyDict是幹嘛用的?

可以方便地應用.來訪問dict的值。例如,普通的dictionary,訪問值只能用下面的方式 In 9 d In 10 d foo Out 10 3 In 11 d.fooAttributeErrorTraceback most recent call last in 1 d.foo Attribu...