測試鍵值對是否存在及刪除元素

2021-08-17 21:20:09 字數 1320 閱讀 2701

測試 map1 中是否存在 key1:

在上一節中,我們已經見過可以使用 val1 = map1[key1] 的方法獲取 key1 對應的值 val1。如果 map 中不存在 key1,val1 就是乙個值型別的空值。

這就會給我們帶來困惑了:現在我們沒法區分到底是 key1 不存在還是它對應的 value 就是空值。

為了解決這個問題,我們可以這麼用:val1, ispresent = map1[key1]

ispresent 返回乙個 bool 值:如果 key1 存在於 map1,val1 就是 key1 對應的 value 值,並且 ispresent為true;如果 key1 不存在,val1 就是乙個空值,並且 ispresent 會返回 false。

如果你只是想判斷某個 key 是否存在而不關心它對應的值到底是多少,你可以這麼做:

_, ok := map1[key1] // 如果key1存在則ok == true,否則ok為false
或者和 if 混合使用:

if _, ok := map1[key1]; ok
從 map1 中刪除 key1:

直接 delete(map1, key1) 就可以。

如果 key1 不存在,該操作不會產生錯誤。

package main

import "fmt"

func main() else

value, ispresent = map1["paris"]

fmt.printf("is \"paris\" in map1 ?: %t\n", ispresent)

fmt.printf("value is: %d\n", value)

// delete an item:

delete(map1, "washington")

value, ispresent = map1["washington"]

if ispresent else

}

結果

the value of

"beijing"

in map1 is: 20

is"paris"

in map1 ?: false

value is: 0

map1 does not contain washington

process finished with

exit code 0

python怎麼判斷字典鍵值是否存在

python中字典的鍵一般是唯一的,如果重複最後的乙個鍵值對會替換前面的,值不需要唯一。字典的每個鍵值 key value 對用冒號 分割,每個鍵值對之間用逗號 分割,整個字典包括在花括號 中 格式如下所示 d dict dict b 3 dict 判斷python中字典的鍵是否存在,一般有兩種通用...

Python判斷檔案 目錄是否存在並建立 刪除檔案

一 判斷檔案 目錄 1 使用os模組 判斷檔案是否存在 os.path.isfile path 判斷目錄是否存在 os.path.isdir path 判斷路徑是否存在 使用 path 模組 os.path.exists path 使用 access 方法 os.access path,os.f o...

判斷檔案是否存在及是否正在使用

1 判斷檔案是否存在 access,waccess 2 判斷檔案是否正在使用 1 若檔案不是被獨佔方式開啟,那麼這個不好判斷 2 如檔案是被獨佔方式開啟,那麼再次以獨佔方式開啟就搞定了。3 不管獨佔與否 列舉系統先有控制代碼handle,從0 4096,間隔4。當然這裡要注意其他程式是否在這期間對檔...