我有这样的数据:
{"address": "1GocfVCWTiRViPtqZetcX4UiCxnKxgTHwK", "balance": 1234, "pending_balance": 0, "paid_out": 0}
我想在平衡后提取数字,但它可以是从0到无穷大。你知道吗
因此,从上面的例子可以看出所需的输出:
1234
顺便说一句,还有一个问题。
我有这样的数据
{"address": "1GocfVCWTiRViPtqZetcX4UiCxnKxgTHwK", "invoice": "invNrKU2ZFMuAJKUiejyVe3X34ybP9awyWZBfUEdY2dZKxYTB8ajW", "redeem_code": "BTCvQDD9xFYHHDYNi1JYeLY1eEkGFBFB49qojETjLBZ2CVYyPm56B"}
通常的做法是什么:
strs = repr(s)
address = s[13:47]
invoice = s[62:115]
redeem_code = s[134:187]
print(address)
print(invoice)
print(redeem_code)
谢谢你的帮助。你知道吗
实际上,你给我们看的是Python中所谓的字典。 这是一组键和值。你知道吗
在这里查看更多信息:https://docs.python.org/3.6/tutorial/datastructures.html#dictionaries
您的词典具有以下键和值:
如果你有一本字典:
但是,如果您拥有的是一个包含该信息的外部文件,或者是从某种web服务获得的,那么您就拥有一个字典的字符串表示。以下是JSON库的价值所在:
您的数据看起来像json,因此最好的处理方法是使用json模块进行解析
如果必须使用正则表达式,可以使用以下代码
在本例中,我使用\d+匹配数字字符串和括号来创建一个组。组0是整个匹配字符串,组1是我们创建的第一个组。你知道吗
不要用regex来解析这样的结构化数据。一旦用适当的方法进行解析(
json.loads
或ast.literal_eval
两者都在这里工作),它们就变成了本机python结构,很容易访问。你知道吗在本例中,在一行中使用
json.loads
:结果:
(同样的方法也适用于第二个问题)
相关问题 更多 >
编程相关推荐