方法一:
s = input()
try:
if 2 <= len(s) < 4 and 1 <= int(s[:-1]) <= 17:
if s[-1] in ['A', 'a', 'F', 'f']:
print('窗口')
elif s[-1] in ['C', 'c', 'D', 'd']:
print('过道')
elif s[-1] in ['B', 'b']:
print('中间')
else:
print('座位号不存在')
else:
print('座位号不存在')
except:
print('座位号不存在')
方法二:
def seat_numbers(seat): # 判定座位是否合法
if not(seat[:-1].isdigit()):# 万一输入是 2c1c排除
return False
if 1 <= int(seat[:-1]) <= 17 and seat[-1] in 'ABCDF':
return True
else:
return False
def window_or_aisle(seat): # 判定是窗口、过道还是中间
if seat[-1] in 'AF':
return '窗口'
elif seat[-1] in 'CD':
return '过道'
elif seat[-1] == 'B':
return '中间'
if __name__ == '__main__':
Seat = input().upper()
if seat_numbers(Seat):
print(window_or_aisle(Seat))
else:
print('座位号不存在')
if name==‘main’ :的理解:
上述程序可不使用:if name == ‘main’:
我们知道,当我们把模块A中的代码在模块B中进行import A时,只要B模块代码运行到该import语句,模块A的代码会被执行。
模块A
a = 100
print(‘你好,我是模块A……’)
print(a)
模块B
from package01 import A
b = 200
print(‘你好,我是模块B……’)
print(b)
运行结果:
你好,我是模块A…… 100 你好,我是模块B…… 200
如果在模块A中,我们有部分的代码不想在被导入到B时直接被运行,但在直接运行A时可直接运行,那该怎么做呢?那就可以用到“if__name__==’main:”这行代码了,我们队上面用到的A模块代码进行修改:
模块A
a = 100
print('你好,我是模块A……')
if __name__=='__main__':
print(a)
运行结果:
你好,我是模块A……
你好,我是模块B……
200