久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

python - 假定有json數據多條記錄,如何根據KEY的值返回一條記錄?

瀏覽:138日期:2022-08-22 10:28:37

問題描述

比如說給一個json數據:

[ { 'Name': 'A1', 'No': '3111', 'createDate': '9999/12/31 00:00:00', 'lastUpdDate': '9999/12/31 00:00:00' }, { 'Name': 'B2', 'No': '2222', 'createDate': '9999/12/31 00:00:00', 'lastUpdDate': '9999/12/31 00:00:00' }, { 'Name': 'C3', 'No': '1444', 'createDate': '9999/12/31 00:00:00', 'lastUpdDate': '9999/12/31 00:00:00' }, { 'Name': 'C4', 'No': '0542', 'createDate': '9999/12/31 00:00:00', 'lastUpdDate': '9999/12/31 00:00:00' }]

我想要No為'0542'的一條記錄:

{ 'Name': 'C4', 'No': '0542', 'createDate': '9999/12/31 00:00:00', 'lastUpdDate': '9999/12/31 00:00:00'}

如果用python3應該怎么實現?我網上搜索了類似代碼比如 data = list(filter(lambda d: d[’No’] == '0542', jsondata))改來改去,總是報各種類型錯誤,抓狂了……所以請教下大家,應該怎么寫,謝謝!

問題解答

回答1:

假設有 json string 如下:

s = '''[ { 'Name': 'A1', 'No': '3111', 'createDate': '9999/12/31 00:00:00', 'lastUpdDate': '9999/12/31 00:00:00' }, { 'Name': 'B2', 'No': '2222', 'createDate': '9999/12/31 00:00:00', 'lastUpdDate': '9999/12/31 00:00:00' }, { 'Name': 'C3', 'No': '1444', 'createDate': '9999/12/31 00:00:00', 'lastUpdDate': '9999/12/31 00:00:00' }, { 'Name': 'C4', 'No': '0542', 'createDate': '9999/12/31 00:00:00', 'lastUpdDate': '9999/12/31 00:00:00' }]'''

代碼:

# code for python3import jsondef search(json_str, no): return [datum for datum in json.loads(s) if datum[’No’]==no]datum = search(s, ’0542’)print(datum)

結果:

[{’Name’: ’C4’, ’No’: ’0542’, ’createDate’: ’9999/12/31 00:00:00’, ’lastUpdDate’: ’9999/12/31 00:00:00’}]

我回答過的問題: Python-QA

標簽: Python 編程
主站蜘蛛池模板: 抚顺县| 尚志市| 襄城县| 吴旗县| 汾西县| 克山县| 微山县| 太仓市| 吐鲁番市| 安多县| 德保县| 延庆县| 南部县| 夏津县| 奇台县| 大庆市| 岑溪市| 延庆县| 巴林左旗| 万源市| 凉山| 沂南县| 翁源县| 怀来县| 钦州市| 祁阳县| 梁河县| 鄯善县| 洪泽县| 佳木斯市| 河源市| 临海市| 东台市| 东光县| 于田县| 南昌市| 阿克苏市| 象州县| 娱乐| 安义县| 土默特左旗|