Python 有没有办法隔离字符串的各个部分?

Python 有没有办法隔离字符串的各个部分?,python,Python,我试图拆分字符串的某些部分,以完全隔离字符串的各个部分。例如,在下面,我试图孤立金伯利克拉克公司的公开股价 我曾尝试使用.split(),但这意味着我只能将开盘价从一侧分离出来。例如,如果它看起来像这样 '1. open': '131.8600', '2. high': '132.0500', '3. low': '131.7900', '4. close': '132.0400', '5. volume': '76708'}, '2019-11-01 15:55:00': 我只能使用.spl

我试图拆分字符串的某些部分,以完全隔离字符串的各个部分。例如,在下面,我试图孤立金伯利克拉克公司的公开股价

我曾尝试使用
.split()
,但这意味着我只能将开盘价从一侧分离出来。例如,如果它看起来像这样

'1. open': '131.8600', '2. high': '132.0500', '3. low': '131.7900', '4. close': '132.0400', '5. volume': '76708'}, '2019-11-01 15:55:00':
我只能使用.split()来获取

例如
r=requests.get(https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=kmb&interval=5min&apikey=exampleapikey)
cont=json.load(r.content.decode())
cont=str(cont)
ali=继续拆分(“{”)
对于范围(9)内的x:
如果x!=1和x!=0:
打印(ali[x]+“\n”)
其他:
x+=1
返回
我似乎弄不懂这句话。为这句令人困惑的话提前道歉你这样试过吗

r=requests.get(“https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=kmb&interval=5min&apikey=exampleapikey")
cont=json.load(r.content.decode())
cont=str(cont)
ali=继续拆分(“{”)
对于范围(9)内的x:
如果x!=1和x!=0:
price=ali[x]。拆分(':')[1]。拆分(',')[0]
打印(价格+“\n”)
其他:
x+=1

您真的不应该使用字符串操作。GET请求以可爱的JSON格式提供您可能需要的所有内容。利用这一点:

def main():

    import requests
    import json

    url = "https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=kmb&interval=5min&apikey=exampleapikey"

    response = requests.get(url)
    assert response.status_code == 200
    data = json.loads(response.text)

    open_share_price = data["Time Series (5min)"]["2019-11-01 16:00:00"]["1. open"]
    print(open_share_price)

    return 0


if __name__ == "__main__":
    import sys
    sys.exit(main())
输出:

131.8600

您希望分离字符串的哪一部分?它是
open
之后的数字吗?您根本不应该对此使用字符串操作;您应该遍历从
json.loads
获得的dict。请格式化代码和数据-选择它并键入
ctrl-k
…json.loads(request.text)我会用它编一本字典,用it@wwii我请求编辑…我很困惑。问题已经包含了一个
json.loads()
显示的引号是单引号我猜OP只是复制了他们在网上看到的部分代码,试图让它工作,而没有真正了解它的用途或功能。单引号有什么区别?请尝试
json.loads(“{a':'b'}”)
而不是
json.loads({a:'b'})
你会看到,json解析器会失败哦,我明白了,谢谢。无论如何,
响应。我得到的文本
似乎使用了双引号-下面是它的样子:
'{\n“元数据”:{\n“1.信息”:“日内(5分钟)打开,高,
…snif。这意味着我在错误的假设下工作。也许我最好删除我的答案,然后我猜?
def main():

    import requests
    import json

    url = "https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=kmb&interval=5min&apikey=exampleapikey"

    response = requests.get(url)
    assert response.status_code == 200
    data = json.loads(response.text)

    open_share_price = data["Time Series (5min)"]["2019-11-01 16:00:00"]["1. open"]
    print(open_share_price)

    return 0


if __name__ == "__main__":
    import sys
    sys.exit(main())
131.8600