(1) in 方法:用來判斷某元素是否存在串列中,如果存在則回傳 True,反之不存在則回傳False,語法如下:
布林值 = 搜尋元素值 in 串列變數名稱
範例1:搜尋某數字是否存在串列中,如果存在就顯示已存在,如果不存在就新增至串列
nums=[1,2,3,4,5,6,7]
num=9
if num in nums:
print(num,"已存在nums中")
else:
nums.append(num)
print(num,"已新增至nums串列")
print("nums=",nums)
執行結果:因為 9 不存在 nums 中,所以會新增至nums中,nums會變成 [1, 2, 3, 4, 5, 6, 7, 9]
(2) not in方法:用來判斷某元素是否不存在串列中,與 in 方法有相反的結果,如果不存在則回傳 True,反之存在則回傳 False,語法如下:
布林值 = 搜尋元素值 not in 串列變數名稱
範例2:搜尋某字串是否不存在串列中,如果不存在就顯示不存在,反之存在就顯示已存在
str1=['甲午','乙未','丙申','丁酉','戊戌','己亥']
str2='丁酉'
if str2 not in str1:
print(str2,"不存在str1中")
else:
print(str2,"已存在str1中")
執行結果:因為 "丁酉" 存在 str1中,所以會顯示"已存在str1中"
(3) index方法:index方法會傳回要尋找的元素在串列中找到相同元素的第1個索引值(可能找到相同的不只一個),語法如下:
索引值 = 串列變數名稱.index(要尋找的元素值)
範例3:搜尋某數字在串列中的索引值
num=[1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0]
find_num=9
num_index=num.index(find_num)
print(find_num,'出現在num的索引值為:',num_index)
執行結果:因為 9 出現在num串列中有兩個,index分別為8、18,所以回傳值為第1個index:8
(4) count方法:count方法會傳回要尋找的元素在串列中有幾個,語法如下:
找到數量 = 串列變數名稱.count(要尋找的元素值)
範例4:搜尋某數字在串列中有幾個
num=[1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0]
find_num=9
find_count=num.count(find_num)
print(find_num,'在num中有',find_count,'個')
執行結果:9 出現在num串列中有2個
完整程式碼如下:
- # -*- coding: utf-8 -*-
- """
- Created on Fri Jan 4 16:22:56 2019
- @author: 軟體罐頭
- """
- print('範例 1:搜尋某數字是否存在串列中,如果在就顯示已存在,如果不在就新增至串列')
- nums=[1,2,3,4,5,6,7]
- num=9
- if num in nums:
- print(num,"已存在nums中")
- else:
- nums.append(num)
- print(num,"已新增至nums串列")
- print("nums=",nums)
- print()
- print('範例 2:搜尋某字串是否不存在串列中,如果不存在就顯示不存在,反之存在就顯示存在')
- str1=['甲午','乙未','丙申','丁酉','戊戌','己亥']
- str2='丁酉'
- if str2 not in str1:
- print(str2,"不存在str1中")
- else:
- print(str2,"已存在str1中")
- print()
- print('範例 3:搜尋某數字在串列中的索引值')
- num=[1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0]
- find_num=9
- num_index=num.index(find_num)
- print(find_num,'出現在num的索引值為:',num_index)
- print()
- print('範例 4:搜尋某數字在串列中有幾個')
- num=[1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0]
- find_num=9
- find_count=num.count(find_num)
- print(find_num,'在num中有',find_count,'個')
執行結果如下: