学习Python:从stdout在dict中存储值

学习Python:从stdout在dict中存储值,python,Python,如何在Python中执行以下操作: 我有一个命令输出,输出以下内容: Datexxxx Clientxxx Timexxx Datexxxx Client2xxx Timexxx Datexxxx Client3xxx Timexxx 我想用一种口述的方式来表达这一点,比如: Client:(date,time), Client2:(date,time) ... 把dict和元组一起使用怎么样? 创建字典并添加条目: dict = {} dict['Client'] = ('date1'

如何在Python中执行以下操作: 我有一个命令输出,输出以下内容:

Datexxxx
Clientxxx
Timexxx

Datexxxx
Client2xxx
Timexxx

Datexxxx
Client3xxx
Timexxx
我想用一种口述的方式来表达这一点,比如:

Client:(date,time), Client2:(date,time) ...

把dict和元组一起使用怎么样? 创建字典并添加条目:

dict = {}
dict['Client'] = ('date1','time1')
dict['Client2'] = ('date2','time2')
访问实体:

dict['Client']
>>> ('date1','time1')

将数据读入字符串
subject
后,可以执行以下操作:

import re
d = {}
for match in re.finditer(
    """(?mx)
       ^Date(.*)\r?\n
       Client\d*(.*)\r?\n
       Time(.*)""", 
    subject):
        d[match.group(2)] = (match.group(1), match.group(2))

比如说:

rows = {}
thisrow = []

for line in output.split('\n'):
        if line[:4].lower() == 'date':
                thisrow.append(line)
        elif line[:6].lower() == 'client':
                thisrow.append(line)
        elif line[:4].lower() == 'time':
                thisrow.append(line)
        elif line.strip() == '':
                rows[thisrow[1]] = (thisrow[0], thisrow[2])
                thisrow = []

print rows

假设有一个尾随的换行符,行前没有空格,等等。

到目前为止,你想到了什么?如果没有:尝试从stdin读取一些内容并将其存储在变量中,然后将其打印到stdout.a datetime.datetime可能是存储日期和时间的更好格式,尽管strtime对“xxxx”没有任何用处;实际格式是什么样的?请发布输出该格式的代码。重要的是要知道它目前是如何工作的,以便我们可以修改它,以满足您的需要。谢谢,我认为这是我现在需要的!啊好的。我误解了你的问题。