如何解析<class,str>对象?

2024-10-02 18:14:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个将此打印到控制台的对象:

{
    "symbol": "GOOGL",
    "annualReports": [
        {
            "fiscalDateEnding": "2020-12-31",
            "reportedCurrency": "USD",
            "operatingCashflow": "65124000000",
            "paymentsForOperatingActivities": "2004000000",
            "proceedsFromOperatingActivities": "None",
            "changeInOperatingLiabilities": "6833000000",
            "changeInOperatingAssets": "7854000000",
            "depreciationDepletionAndAmortization": "13697000000",
            "capitalExpenditures": "22281000000",
            "changeInReceivables": "6524000000",
            "changeInInventory": "None",
            "profitLoss": "40269000000",
            "cashflowFromInvestment": "-32773000000",
            "cashflowFromFinancing": "-24408000000",
            "proceedsFromRepaymentsOfShortTermDebt": "None",
            "paymentsForRepurchaseOfCommonStock": "31149000000",
            "paymentsForRepurchaseOfEquity": "31149000000",
            "paymentsForRepurchaseOfPreferredStock": "None",
            "dividendPayout": "None",
            "dividendPayoutCommonStock": "None",
            "dividendPayoutPreferredStock": "None",
            "proceedsFromIssuanceOfCommonStock": "None",
            "proceedsFromIssuanceOfLongTermDebtAndCapitalSecuritiesNet": "None",
            "proceedsFromIssuanceOfPreferredStock": "None",
            "proceedsFromRepurchaseOfEquity": "-31149000000",
            "proceedsFromSaleOfTreasuryStock": "None",
            "changeInCashAndCashEquivalents": "7943000000",
            "changeInExchangeRate": "None",
            "netIncome": "40269000000"
        },
        {
            "fiscalDateEnding": "2019-12-31",
            "reportedCurrency": "USD",
            "operatingCashflow": "54520000000",
            "paymentsForOperatingActivities": "1661000000",
            "proceedsFromOperatingActivities": "None",
            "changeInOperatingLiabilities": "7635000000",
            "changeInOperatingAssets": "4961000000",
            "depreciationDepletionAndAmortization": "11781000000",
            "capitalExpenditures": "23548000000",
            "changeInReceivables": "4340000000",
            "changeInInventory": "None",
            "profitLoss": "34343000000",
            "cashflowFromInvestment": "-29491000000",
            "cashflowFromFinancing": "-23209000000",
            "proceedsFromRepaymentsOfShortTermDebt": "None",
            "paymentsForRepurchaseOfCommonStock": "18396000000",
            "paymentsForRepurchaseOfEquity": "18396000000",
            "paymentsForRepurchaseOfPreferredStock": "None",
            "dividendPayout": "None",
            "dividendPayoutCommonStock": "None",
            "dividendPayoutPreferredStock": "None",
            "proceedsFromIssuanceOfCommonStock": "None",
            "proceedsFromIssuanceOfLongTermDebtAndCapitalSecuritiesNet": "None",
            "proceedsFromIssuanceOfPreferredStock": "None",
            "proceedsFromRepurchaseOfEquity": "-18396000000",
            "proceedsFromSaleOfTreasuryStock": "None",
            "changeInCashAndCashEquivalents": "1820000000",
            "changeInExchangeRate": "None",
            "netIncome": "34343000000"
        },
        {
            "fiscalDateEnding": "2018-12-31",
            "reportedCurrency": "USD",
            "operatingCashflow": "47971000000",
            "paymentsForOperatingActivities": "69000000",
            "proceedsFromOperatingActivities": "None",
            "changeInOperatingLiabilities": "10052000000",
            "changeInOperatingAssets": "3376000000",
            "depreciationDepletionAndAmortization": "9035000000",
            "capitalExpenditures": "25139000000",
            "changeInReceivables": "2169000000",
            "changeInInventory": "None",
            "profitLoss": "30736000000",
            "cashflowFromInvestment": "-28504000000",
            "cashflowFromFinancing": "-13179000000",
            "proceedsFromRepaymentsOfShortTermDebt": "None",
            "paymentsForRepurchaseOfCommonStock": "9075000000",
            "paymentsForRepurchaseOfEquity": "9075000000",
            "paymentsForRepurchaseOfPreferredStock": "None",
            "dividendPayout": "None",
            "dividendPayoutCommonStock": "None",
            "dividendPayoutPreferredStock": "None",
            "proceedsFromIssuanceOfCommonStock": "None",
            "proceedsFromIssuanceOfLongTermDebtAndCapitalSecuritiesNet": "None",
            "proceedsFromIssuanceOfPreferredStock": "None",
            "proceedsFromRepurchaseOfEquity": "-9075000000",
            "proceedsFromSaleOfTreasuryStock": "None",
            "changeInCashAndCashEquivalents": "5986000000",
            "changeInExchangeRate": "-302000000",
            "netIncome": "30736000000"
        },
        {
            "fiscalDateEnding": "2017-12-31",
            "reportedCurrency": "USD",
            "operatingCashflow": "37091000000",
            "paymentsForOperatingActivities": "84000000",
            "proceedsFromOperatingActivities": "None",
            "changeInOperatingLiabilities": "6012000000",
            "changeInOperatingAssets": "5932000000",
            "depreciationDepletionAndAmortization": "6915000000",
            "capitalExpenditures": "13184000000",
            "changeInReceivables": "3768000000",
            "changeInInventory": "None",
            "profitLoss": "12506000000",
            "cashflowFromInvestment": "-31401000000",
            "cashflowFromFinancing": "-8298000000",
            "proceedsFromRepaymentsOfShortTermDebt": "None",
            "paymentsForRepurchaseOfCommonStock": "4846000000",
            "paymentsForRepurchaseOfEquity": "4846000000",
            "paymentsForRepurchaseOfPreferredStock": "None",
            "dividendPayout": "None",
            "dividendPayoutCommonStock": "None",
            "dividendPayoutPreferredStock": "None",
            "proceedsFromIssuanceOfCommonStock": "None",
            "proceedsFromIssuanceOfLongTermDebtAndCapitalSecuritiesNet": "None",
            "proceedsFromIssuanceOfPreferredStock": "None",
            "proceedsFromRepurchaseOfEquity": "-4846000000",
            "proceedsFromSaleOfTreasuryStock": "None",
            "changeInCashAndCashEquivalents": "-2203000000",
            "changeInExchangeRate": "405000000",
            "netIncome": "12662000000"
        },
        {
            "fiscalDateEnding": "2016-12-31",
            "reportedCurrency": "USD",
            "operatingCashflow": "36036000000",
            "paymentsForOperatingActivities": "84000000",
            "proceedsFromOperatingActivities": "None",
            "changeInOperatingLiabilities": "1848000000",
            "changeInOperatingAssets": "2578000000",
            "depreciationDepletionAndAmortization": "6144000000",
            "capitalExpenditures": "10212000000",
            "changeInReceivables": "2578000000",
            "changeInInventory": "None",
            "profitLoss": "19276000000",
            "cashflowFromInvestment": "-31165000000",
            "cashflowFromFinancing": "-8332000000",
            "proceedsFromRepaymentsOfShortTermDebt": "None",
            "paymentsForRepurchaseOfCommonStock": "3693000000",
            "paymentsForRepurchaseOfEquity": "3693000000",
            "paymentsForRepurchaseOfPreferredStock": "None",
            "dividendPayout": "None",
            "dividendPayoutCommonStock": "None",
            "dividendPayoutPreferredStock": "None",
            "proceedsFromIssuanceOfCommonStock": "None",
            "proceedsFromIssuanceOfLongTermDebtAndCapitalSecuritiesNet": "None",
            "proceedsFromIssuanceOfPreferredStock": "None",
            "proceedsFromRepurchaseOfEquity": "-3395000000",
            "proceedsFromSaleOfTreasuryStock": "None",
            "changeInCashAndCashEquivalents": "-3631000000",
            "changeInExchangeRate": "-170000000",
            "netIncome": "19478000000"
        }
    ],

我想知道如何为每份年度报告获取具体变量。例如,我需要从每个报告中创建一个仅包含“netIncome”的数据框架。我如何解析这样一个对象并获取这些数据


Tags: noneusdnetincomeprofitlosscapitalexpendituresdepreciationdepletionandamortizationfiscaldateendingreportedcurrency
1条回答
网友
1楼 · 发布于 2024-10-02 18:14:14

这看起来像是一个dict,其中键symbol表示哪个股票,然后键annualReports包含一个list{}

唯一类似于DataFrame的东西是annualReports成员中包含的内容

df = DataFrame(obj['annualReports'])

可能是您的第一步,然后您可以查看df['netIncome`

编辑:

标题与问题描述不匹配,因此我也将假定输入是字符串。在这种情况下,您需要首先将JSON导入Python对象(dict

from json import loads

obj = loads(source_string)

相关问题 更多 >