python - 如果标签中不存在元素,则打印“”-python编程
问题描述
s = '''
:20:name
:21A:Address
:22B:phone
:57A:/256789422254
TEST VALUE
:59B:/REST_MA
LINE1
:59C:TEST
'''
编写的代码:
if ':57A:' in s:
a, b = s[s.index(':57A:') - 1 :].strip().split("\n")[:2]
a = a.split(':')[2]
print("value of A:" + a[1:7])
print("value of B:" + b)
else:
print('not found')
结果显示:
A 的值:256789
B 的值:TEST VALUE
如果 :57A: 没有两行 例如:
s = '''
:20:name
:21A:Address
:22B:phone
:57A:/256789422254
:59B:/REST_MA
LINE1
:59C:TEST
'''
然后我想按预期输出:
A的值:256789
B的值:''
实际:
A 的值:256789
的值 B::59B:/REST_MA
因为 A 和 B 的值应该来自:57A:但从输出需要:59B:
解决方案
:
检查以in b开头的标签
if ':57A:' in s:
a, b = s[s.index(':57A:') - 1 :].strip().split("\n")[:2]
a = a.split(':')[2]
print("value of A:" + a[1:7])
if b.startswith(':'): # add this check
b = ''
print("value of B:" + b)
else:
print('not found')
推荐阅读
- nomad - 如何解决游牧工作中非法字符代码U + 0003
- oracle - DBA_OBJECTS 与 ALL_OBJECTS
- mysql - Apache 意外关闭,MySQL 尝试启动 MySQL 应用程序
- python - 如何在 Python 中创建 EC 私钥?
- angular-material - 从角度垫对话框返回布尔值并等待关闭后执行任务
- spring - @Async 或 JMS 队列
- r - 带有可选变量的函数内部的 dplyr filter() (filter_if 也许?)
- sql - 在 Dremio 查询中使用 FLATTEN 时,有没有办法包含元素索引?
- wordpress - 使用 587 设置 Wordpress Post SMTP 和 Office 365 端口时出现延迟是否正常?
- python - 我尝试使用 openCV python 将网络摄像头视频录制到文件中,我无法用我的任何视频播放器打开文件这是我的代码