Python 在 if 循环中过滤输出?
Python Filter output in if loop?
我得到了以下代码:
def gps():
print("\t\tGPS information:")
for tag in tags.keys():
if 'GPS' in tag:
print "%s: , %s" % (tag, tags[tag])
当我 运行 时,我的输出如下所示:
GPS GPSLatitudeRef: , S
GPS GPSLatitude: , [33, 51, 2191/100]
GPS GPSLongitude: , [151, 13, 1173/100]
GPS GPSVersionID: , [0, 0, 2, 2]
如何过滤文本以删除 GPS?
我确实用 spitline 尝试过,但无法让它在 if 循环中工作。
如果您的示例输出是您输出的正确表示。
if 'GPS' in tag:
print "%s: , %s" % (tag.split(' ')[1], tags[tag])
要替换所有 'GPS' 只需将其替换为空字符串,
if 'GPS' in tag:
print "%s: , %s" % (tag.replace('GPS', ''), tags[tag])
或者,只是第一次出现,
if 'GPS' in tag:
print "%s: , %s" % (tag.replace('GPS', '', 1), tags[tag])
指定要替换的次数(在本例中为 1)。或者,像 zondo 指定的那样,
tag.lstrip('GPS')
更新
去掉开头的space可以使用lstrip方法
tag.replace('GPS', '').lstrip()
也许这不是 Python 中最方便的解决方案,但您也可以使用正则表达式进行更复杂的替换:
import re
for tag in tags.keys():
print "%s: %s" % (re.sub(r'^.*?GPS', '', tag), tags[tag])
(删除第一个 GPS 事件)。如果你想删除所有从头到'GPS'(包括GPS),只需输入:
print "%s: %s" % (re.sub(r'^.*GPS', '', tag), tags[tag])
(删除“?”问号)。但是,对于像这样的字符串:
"GPS SomeStringGPS"
你会得到空字符串,所以要小心。
已编辑:添加了第二种情况。
我得到了以下代码:
def gps():
print("\t\tGPS information:")
for tag in tags.keys():
if 'GPS' in tag:
print "%s: , %s" % (tag, tags[tag])
当我 运行 时,我的输出如下所示:
GPS GPSLatitudeRef: , S
GPS GPSLatitude: , [33, 51, 2191/100]
GPS GPSLongitude: , [151, 13, 1173/100]
GPS GPSVersionID: , [0, 0, 2, 2]
如何过滤文本以删除 GPS? 我确实用 spitline 尝试过,但无法让它在 if 循环中工作。
如果您的示例输出是您输出的正确表示。
if 'GPS' in tag:
print "%s: , %s" % (tag.split(' ')[1], tags[tag])
要替换所有 'GPS' 只需将其替换为空字符串,
if 'GPS' in tag:
print "%s: , %s" % (tag.replace('GPS', ''), tags[tag])
或者,只是第一次出现,
if 'GPS' in tag:
print "%s: , %s" % (tag.replace('GPS', '', 1), tags[tag])
指定要替换的次数(在本例中为 1)。或者,像 zondo 指定的那样,
tag.lstrip('GPS')
更新
去掉开头的space可以使用lstrip方法
tag.replace('GPS', '').lstrip()
也许这不是 Python 中最方便的解决方案,但您也可以使用正则表达式进行更复杂的替换:
import re
for tag in tags.keys():
print "%s: %s" % (re.sub(r'^.*?GPS', '', tag), tags[tag])
(删除第一个 GPS 事件)。如果你想删除所有从头到'GPS'(包括GPS),只需输入:
print "%s: %s" % (re.sub(r'^.*GPS', '', tag), tags[tag])
(删除“?”问号)。但是,对于像这样的字符串:
"GPS SomeStringGPS"
你会得到空字符串,所以要小心。
已编辑:添加了第二种情况。