Python if else条件语句的用法(附带实例,新手必看)
Python 的判断语句使用 if 引导,可搭配使用 elif 和 else,语法格式如下:
【实例 1】通过字符串比较判断端口状态。
【实例 2】用条件语句结合一些字符串方法从网络设备配置中提取信息。
先通过字符串的 startswith() 判断当前行文本是否以 Eth 开头,如果是以 Eth 开头,那么代表当前行是端口的文本,可以进行进一步的信息提取;否则,输出“此行未发现端口信息”的提示。
在提取端口信息的代码中,通过字符串的 split() 方法,并用默认的空格将当前行的文本切割成若干字符串成员的列表。通过索引访问列表获取成员的端口名称和端口状态,再将其赋值给端口的字典变量 intf,最终输出端口信息。
	
	
if 表达式 1:
    代码块 1
elif 表达式 2:
    代码块 2
elif 表达式 3:
    代码块 3
...//其它elif语句
else:
    代码块 n
- 判断一定以 if 开始;
 - 后续可根据情况使用 elif 进行多次判断,即代表不满足上一个条件时进行新一轮的判断;
 - else 代表所有条件均不满足。
 - 根据实际情况,判断中可以没有 elif 或者 else;
 - if 和 elif 后面隔一个空格编写条件表达式,条件表达式后面要接英文冒号,然后换行控制缩进编写新的逻辑代码块,缩进一般为 4 个空格;
 - else 后面接冒号换行控制缩进编写逻辑代码块。
 
在判断语句中,所有表示非空、非零的值都会被认为是 True,反之是 False:在 PyCharm 中,当用户输入“if<条件> :”后按下回车键,代码会自动缩进。
- 整数 0 在判断条件中会被转换为 False;
 - 空列表(没有成员的列表)会被视为 False;
 - 空值 None 也会被视为 False。
 
【实例 1】通过字符串比较判断端口状态。
intf_status = 'up'
# 一个 if 判断的示例
if intf_status == 'up':
    print('端口up,正常')
elif intf_status == 'down':
    print('端口down,异常')
else:
    print('未知端口状态')
print('端口状态{}'.format(intf_status))
 
# 另一个 if 判断的示例
if intf_status == 'up':
    print('端口up,正常')
else:
    print('端口未up,异常')
【实例 2】用条件语句结合一些字符串方法从网络设备配置中提取信息。
line = '''Eth1/1          1       eth  trunk  up      none        1000(D) 11'''
if line.startswith('Eth'):
    intf = {}
    intf_info = line.split()
    intf_name = intf_info[0]
    intf_stauts = intf_info[4]
    intf['name'] = intf_name
    intf['status'] = intf_stauts
    print(intf) # 输出结果为 {'name': 'Eth1/1', 'status': 'up'}
else:
    print('此行未发现端口信息')
变量 line 代表某网络设备的一行配置文本,在实际应用中,读取文本文件后多使用字符串的s plitlines() 方法将文本切割成若干行。先通过字符串的 startswith() 判断当前行文本是否以 Eth 开头,如果是以 Eth 开头,那么代表当前行是端口的文本,可以进行进一步的信息提取;否则,输出“此行未发现端口信息”的提示。
在提取端口信息的代码中,通过字符串的 split() 方法,并用默认的空格将当前行的文本切割成若干字符串成员的列表。通过索引访问列表获取成员的端口名称和端口状态,再将其赋值给端口的字典变量 intf,最终输出端口信息。
 ICP备案:
 公安联网备案: