首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从JSON打印值

从JSON打印值
EN

Stack Overflow用户
提问于 2018-01-23 15:50:34
回答 2查看 272关注 0票数 0

这里是Python Noob。我有一个返回如下项目的列表:

代码语言:javascript
运行
复制
"Users": [
    {
        "UserName": "Adele",
        "Path": "/",
        "CreateDate": "2013-03-07T05:14:48Z",
        "UserId": "AKIAI44QH8DHBEXAMPLE",
        "Arn": "arn:aws:iam::123456789012:user/Adele"
    },
    {
        "UserName": "Bob",
        "Path": "/",
        "CreateDate": "2012-09-21T23:03:13Z",
        "UserId": "AKIAIOSFODNN7EXAMPLE",
        "Arn": "arn:aws:iam::123456789012:user/Bob"
    }
]

我希望能够遍历json对象并打印“CreateDate”的用户的CreateDate:

代码语言:javascript
运行
复制
    for Users, UserName in users.items():
    print Users['CreateDate']
    if Users['CreateDate'] == datetime.today():
        print Users['UserName']

我收到一个错误:

代码语言:javascript
运行
复制
"errorType": "TypeError",

"errorMessage": "string indices must be integers"

不知道我错过了什么。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-24 04:52:43

以下是许多方法之一:

代码语言:javascript
运行
复制
    import boto3
    import datetime
    a=boto3.client('iam')
    b=a.list_users()
    for i in b['Users']:
        x=i['CreateDate'].date()
        y=datetime.datetime.now().date()
        if x==y:
            print i['UserName']
票数 1
EN

Stack Overflow用户

发布于 2018-01-23 16:12:23

正如其他人在评论中所说的那样。您的用户数据结构是一个列表,您只需使用一个常规的forloop来完成它。

代码语言:javascript
运行
复制
>>> users = {"Users": [
...     {
...         "UserName": "Adele",
...         "Path": "/",
...         "CreateDate": "2013-03-07T05:14:48Z",
...         "UserId": "AKIAI44QH8DHBEXAMPLE",
...         "Arn": "arn:aws:iam::123456789012:user/Adele"
...     },
...     {
...         "UserName": "Bob",
...         "Path": "/",
...         "CreateDate": "2012-09-21T23:03:13Z",
...         "UserId": "AKIAIOSFODNN7EXAMPLE",
...         "Arn": "arn:aws:iam::123456789012:user/Bob"
...     }
... ]}
>>> from datetime import datetime
>>> today = datetime.now()
>>> for user in users['Users']:
...     user_created = datetime.strptime(user['CreateDate'], '%Y-%m-%dT%H:%M:%SZ')
...     if user_created.year == today.year and user_created.month == 
today.month and user_created.day == today.day:
...             print(user['UserName'])
... 
>>> 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48405741

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档