[解決済み] TypeError: PythonでJSONをパースするとき、文字列のインデックスは整数でなければなりませんか?
2022-01-28 14:48:17
質問
なぜこのJSON文字列をパースすることができないのか、今混乱しています。同様のコードは、他のJSON文字列では正常に動作しますが、この文字列では動作しません - 私はJSON文字列をパースし、JSONからスクリプトを抽出しようとしています。
以下は私のコードです。
for step in steps:
step_path = '/example/v1' +'/'+step
data, stat = zk.get(step_path)
jsonStr = data.decode("utf-8")
print(jsonStr)
j = json.loads(json.dumps(jsonStr))
print(j)
shell_script = j['script']
print(shell_script)
そのため、最初の
print(jsonStr)
は次のように出力されます。
{"script":"#!/bin/bash\necho Hello world1\n"}
そして、2番目の
print(j)
は、このように印刷されます。
{"script":"#!/bin/bash\necho Hello world1\n"}
そして、3つ目のプリントはプリントアウトされず、次のようなエラーが表示されます。
Traceback (most recent call last):
File "test5.py", line 33, in <module>
shell_script = j['script']
TypeError: string indices must be integers
では、私はここで何を間違えているのでしょうか?
私はJSONをパースするために同じ上記のコードを使用し、それは正常に動作しています。
解決方法は?
を置き換えてみてください。
j = json.loads(json.dumps(jsonStr))
を
j = json.loads(jsonStr)
.
関連
-
opencvとpillowを用いた顔認証システム(デモあり)
-
Python Decorator 練習問題
-
Pythonの画像ファイル処理用ライブラリ「Pillow」(グラフィックの詳細)
-
[解決済み】ilocが「IndexError: single positional indexer is out-of-bounds」を出す。
-
[解決済み】numpyの配列連結。"ValueError:すべての入力配列は同じ次元数でなければならない"
-
[解決済み】pygame.error: ビデオシステムが初期化されていない
-
[解決済み】Django: ImproperlyConfigured: SECRET_KEY 設定は空であってはならない
-
[解決済み】ValueError: pickleプロトコルがサポートされていません。3、python2 pickleはpython3 pickleでダンプしたファイルを読み込むことができない?
-
[解決済み] Pythonを使ってJSON文字列をdictに変換する
-
[解決済み】「TypeError: string indices must be integers」と表示されるのですが?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
PythonによるLeNetネットワークモデルの学習と予測
-
Pythonコンテナのための組み込み汎用関数操作
-
Python カメの描画コマンドとその例
-
python implement mysql add delete check change サンプルコード
-
PythonによるExcelファイルの一括操作の説明
-
[解決済み】お使いのCPUは、このTensorFlowバイナリが使用するようにコンパイルされていない命令をサポートしています。AVX AVX2
-
[解決済み】pygame.error: ビデオシステムが初期化されていない
-
[解決済み】TypeError: re.findall()でバイトのようなオブジェクトに文字列パターンを使用することはできません。)
-
[解決済み】 NameError: グローバル名 'xrange' は Python 3 で定義されていません。
-
[解決済み] TypeError: 'DataFrame' オブジェクトは呼び出し可能ではない