python - python - 删除命名空间并仅打印所需的字符串
问题描述
我有下面的代码,它将值存储在列表中。输出打印列表中的所有值,但带有命名空间。我的问题是,
- 如何在没有命名空间的情况下打印?
- 如何只打印我需要的值?
例如,从下面的输出中我只需要打印name2,
['Channel1\nName2\n4Time']
下面是我的代码,
# -*- coding: utf-8 -*-
import subprocess, sys
firstarg=sys.argv[1]
result = []
service_provider = subprocess.Popen (['ffprobe', '-loglevel', 'fatal', '-select_streams', 'p:program_id=p:1', '-show_entries', 'program_tags=service_name', '-of', 'csv=%s' % ("p=0"), '-i', sys.argv[1]], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
out = service_provider.communicate() [0]
result = list()
result.append(out)
print result
解决方案
您可以将字符串按"\n"
字符拆分并获取您需要的字符串
x = ['Channel1\nName2\n4Time']
x[0].split("\n")[1]
输出
'Name2'
推荐阅读
- javascript - 我如何导航到下面的课程
- javascript - 从服务文件发送的数据在 Reducer 状态中未更新
- scala - 为什么 scala self 类型不是其要求的子类型
- java - 加载 ApplicationContext 失败:在另一个测试类中使用 @TestConfiguration 将 bean 作为“headerProcessor”
- python - 二维均匀分布样本
- android - Android 正常布局在设备上的显示方式不同
- javascript - Ruby on Rails - 访问 Javascript 文件的数据库值
- javascript - 响应式中心导航栏
- c++ - SFINAE 和 sizeof 与 constexpr
- swift - SnapKit snp 无法分配给 UIHostingController