Python 簡易手冊

單元 19 - in 運算子

in 運算子 (operator) 用來判斷 in 之前的運算元 (operand) 是否為之後運算元的元素 (element) ,例如

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
# 建立兩個不同的串列
a = [1, 2, 3, 4]
b = [2, 4, 6, 8]

# 判斷數字 1 是否在 a 中
print(1 in a)

# 判斷數字 1 是否不在 b 中
print(1 not in b)

# 檔名: in_demo.py
# 說明: 《Python簡易手冊》的範例
# 網址: http://kaiching.org
# 作者: Kaiching Chang
# 時間: 2024 年 3 月

in 運算子之後的運算元必須是可迭代的 (iterable) ,也就是具有元素的複合資料型態 (compound data type) ,單元 66 - 迭代器會詳細介紹可迭代與迭代器 (iterator) 。

關鍵字 (keyword) for 通常用於處理可迭代物件,因此需要和 in 一起用,單元 23 - for 陳述會詳細介紹 for 的用法。

此例先建立兩個串列 (list) 變數 (variable) ab ,分別指派不同內容,然後先用 in 判斷 1 是否在 a 中,再用 not in 判斷 1 是否不在 b 中,此例執行結果如下

> python in_demo.py
True
True
>

串列會在單元 39 - 串列詳細介紹。

如果是字串 (string) 則可以判斷某字串是否為特定字串的子字串 (substring) ,例如

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# 建立字串變數
a = "There is no spoon."

# 判斷 "is" 是否在 a 中
print("is" in a)

# 判斷 "be" 是否在 a 中
print("be" in a)

# 檔名: in_demo2.py
# 說明: 《Python簡易手冊》的範例
# 網址: http://kaiching.org
# 作者: Kaiching Chang
# 時間: 2024 年 3 月

字串會在單元 33 - 字串詳細介紹。

此例先建立一個英文句子字串,然後將兩個英文單字分別判斷是否在這個英文句子中,執行結果如下

> python in_demo2.py
True
False
>

最後看到字典 (dictionary) 的例子,字典是判斷是否存在指定的 key

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# 建立字典變數
a = {1:10, 2:20}

# 判斷 10 是否為 a 的 key
print(10 in a)

# 判斷 2 是否為 a 的 key
print(2 in a)

# 檔名: in_demo3.py
# 說明: 《Python簡易手冊》的範例
# 網址: http://kaiching.org
# 作者: Kaiching Chang
# 時間: 2024 年 3 月

字典會在單元 41 - 字典詳細介紹。

此例先判斷 10 是否為 akey ,然後再判斷 2 是否為 akey ,執行結果如下

> python in_demo3.py
False
True
>

參考資料

上一頁 單元 18 - is 運算子
回 Python 簡易手冊 首頁
下一頁 單元 20 - if 陳述
回 Python 教材首頁
回程式語言教材首頁