master
/ 5.1.4 成员测试.ipynb

5.1.4 成员测试.ipynb @masterview markup · raw · history · blame

Notebook

成员测试

Python 提供了“in” 和“not in”运算符,用于测试某对象是否为字符串、列表或元组等序列或集合中的__成员__,返回__布尔值__(True 或False)。

应用“in”测试时,如果该对象在指定的序列中存在,则返回True,否则返回False。应用“not in”测试时,正好相反。
成员测试一般用于__条件运算__,根据测试结果决定执行后续程序中的某个分支。

In [1]:
northeast = ['辽宁', '吉林', '黑龙江']
province = input()
if province in northeast:
    print(f'{province}是东北三省之一')
In [4]:
northeast = ['辽宁', '吉林', '黑龙江']
province = input()
if province not in northeast:
    print(f'{province}不是东北三省之一')
In [ ]:
# 输入身份证号,输出性别

id_number = input()           # 测试数据是合法的18位身份证号
if id_number[16] in '13579':  # 若第17位数字在'13579'中存在,为奇数,或if id_number[-2] in '13579':
    gender = '男'
else:
    gender = '女'
print(f'性别: {gender}')

实例 6.7 判断火车票座位

我国高铁二等座车座席采用2+3布置,每排设有“3+2”方式排列五个座位,以“A、B、C、D、F”代表,字母“A”和“F”的座位靠窗,字母“C”和“D”靠中间过道,“B”代表三人座中间座席。 ‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬ 用户输入一个数字和一个字母组成的合法的座位号,根据字母判断位置是窗口、过道还是中间座席。

In [ ]:
seat = input()
if seat[-1] in 'AF':
    print(f'{seat}{seat[:-1]}排{"窗口"}')
elif seat[-1] in 'CD':
    print(f'{seat}{seat[:-1]}排{"过道"}')
elif seat[-1] == 'B':
    print(f'{seat}{seat[:-1]}排{"中间"}')
In [ ]:
 
In [ ]: