python基礎:json.loads(str)出現錯誤總結
1 >>> import json 2 >>> test="{'data':'123'}" 3 >>> result=json.loads(test) 4 Traceback (most recent call last): 5 File "<stdin>", line 1, in <module> 6 File "d:\Anaconda3\lib\json\__init__.py", line 319, in loads 7 return _default_decoder.decode(s)8 File "d:\Anaconda3\lib\json\decoder.py", line 339, in decode 9 obj, end = self.raw_decode(s, idx=_w(s, 0).end()) 10 File "d:\Anaconda3\lib\json\decoder.py", line 355, in raw_decode 11 obj, end = self.scan_once(s, idx) 12 json.decoder.JSONDecodeError: Expecting property name enclosed indouble quotes: 13 line 1 column 2 (char 1)
原因在於:字串裡用單引號來標識字元。
解決辦法如下:將字串裡的單引號替換成雙引號
1 >>> import re 2 >>> test=re.sub('\'','\"',test) 3 >>> result=json.loads(test) 4 >>> result['data'] 5 '123'
對於帶u'的字串,u也要去掉:
1 >>> c=f.read() 2 >>> c3 "{u'meta': {u'code': 200, u'requestId': u'5815f6739fb6b77494061e19'}, u'response 4 ': {u'tips': {u'count': 0, u'items': []}}}" 5 >>> d=re.sub("u'","\"",c) 6 >>> d 7 '{"meta\': {"code\': 200, "requestId\': "5815f6739fb6b77494061e19\'}, "response\ 8 ': {"tips\': {"count\': 0, "items\': []}}}' 9 >>> d=re.sub("'","\"",d) 10 >>> d 11 '{"meta": {"code": 200, "requestId": "5815f6739fb6b77494061e19"}, "response": {" 12 tips": {"count": 0, "items": []}}}' 13 >>> json.loads(d) 14 {'response': {'tips': {'items': [], 'count': 0}}, 'meta': {'requestId': '5815f67 15 39fb6b77494061e19', 'code': 200}}
相關推薦
python基礎:json.loads(str)出現錯誤總結
1 >>> import json 2 >>> test="{'data':'123'}" 3 >>> result=json.loads(test) 4 Traceback (most recent call last): 5
Python基礎:計算list中各個元素出現的頻率
方法一 from collections import Counter list = [59, 138, 13, 1367, 158, 35, 572, 43, 10, 34, 572, 572, 44, 12, 1345, 7, 21, 59, 10] list.sort()
[python]json.loads 幾種錯誤 解決方案
1、 json.loads Python錯誤: 'utf8' codec can't decode byte ... 由於需求,要用python讀取網頁返回json,並取得其中的資料但是卻遇到以上編碼的問題。 終於找到了解決方案: 我們只需要對字串進行unico
Python基礎:十七、str 字符串
數據 少量數據 使用 spa pri 翻轉 fin 位置 hello str字符串(儲存少量數據) 1. 把字符連成串,在python中用‘,",‘‘‘,"""引起來的內容被稱為字符串 2. 索引:索引就是下標,從0開始 3. 用 [] 進行索引 strExam
python基礎:循環語句和判斷語句
python 語句 循環 判斷 小生博客:http://xsboke.blog.51cto.com 小生 Q Q:1770058260 -------謝謝您的參考,如有疑問,歡迎交流一、 python語句塊和縮進縮進是Py
python基礎:元組、字典、深淺拷貝與函數
dictionary python tuple 函數 開發 小生博客:http://xsboke.blog.51cto.com 小生 Q Q:1770058260 -------謝謝您的參考,如有疑問,歡迎交流一、 元
Python基礎:Python函數、文件操作、遞歸
文件處理 r+ lose 獲取 表示 pyw 全部 truncate 模塊 函數參數函數參數包括位置參數,關鍵字參數,動態參數(*args, **args)三種。傳參的過程是形式參數的賦值。*args傳入的參數是元組形式,**args傳入的參數是字典形式。示例代碼如下:(這
Python基礎:之進程
log 進程創建 異步 for cnblogs 分享 cep 執行兩次 區別 一、進程 1.什麽是進程 程序並不能單獨運行,只有將程序裝載到內存中,系統為它分配資源才能運行,而這種執行的程序就稱之為進程。 正在進行的一個過程或者說一個任務。而負責執行任務則是cpu 2.進程
Python基礎:day10
開啟 exceptio 線程 args [0 brush Coding nco tin 一、python並發編程之多線程 1.1 threading模塊 使用方式 from threading import Thread #!/usr/bin/python # -*
python基礎:python運算優先級
不用 邏輯 排行榜 python基礎 翻轉 比較運算符 否則 出錯 運算符 Python的優先級排行榜: 優先級:1.函數、尋址、下表 2.冪運算 ** 3.翻轉運算~ 4.正負號,正負號要緊挨操作數,否則會出錯,在python3中可以不用
python基礎:元組的使用
元組 遍歷 方法元組的定義。使用( )來定義。null_tuple = () #定義一個空元組one_element = (‘one‘, ) #定義一個元素的元組,註意:只有一個元素後面必須帶逗號元組的修改、增加和刪除元素。元組是不可以修改,增加和刪除元素的!。但,
Python基礎:列表的使用
list 列表 淺復制 pop insert remove extend一、定義:list列表,使用[ ]定義,可以嵌套元組、列表、字典。相比元組,除了定義使用中括號,還多出了增加、修改、刪除元素的方法。Python裏經常使用的數據結構。二、訪問列表:exp_list = [‘one‘, ‘this‘, ‘i
python基礎:集合-set()
集合一、定義:集合是一個無序的,沒有重復元素的序列。可以用來去重。使用{},和set()定義空集必須使用set()來定義可以set任何可叠代的對象string = ‘this is string!‘ num = range(1, 11) list = [2, 4, 6, 8, 10,11, 12 ] set
python基礎:裝飾器
裝飾器一、定義: 是一個傳入值是函數,返回值也是函數的高階函數。二、作用: 不改變原函數的代碼和調用方式,增加新的功能。三、實例: 把兩個函數earth()和moon()添加print(‘They are in the solar system!‘)
Python基礎:Python函數
python函數 傳遞參數 函數定義 函數調用 一、函數是python中使用最高的對象。 函數定義的簡單規則 : 1、用def定義,接著是函數名和參數和冒號,格式: 2、函數內部代碼塊需要縮進 3、使用return返回函數值,默認返回值是
python基礎:多進程講解
linu () int 平臺 else tpi style linux 執行 fork的使用方法: import os import time # 主進程執行到os.fork()會產生一個子進程。ret>0,代表主進程;ret=0,代表子進程 ret=os.fo
Python基礎:Python類(真累~)
理解 技術 rowspan num 重新 說明 區分 第一個 構造 類的聲明:一、類的屬性(私有屬性和公有屬性)(類屬性)二、類的方法(構造方法、析構方法、自定義方法、特殊成員方法)(靜態方法、類方法、類屬性)三、類的繼承(方法和屬性的繼承,方法的重構)(抽象類,多重繼承)
Python基礎:反射
-s strip als class bar color 定義 object left 反射就是根據提供的字符串,匹配對象(類、模塊等)裏面的方法。達到動態調用的目的。主要有四個成員。getattr、hasattr、setattr、delattr 獲取成員、檢查成員、設置
Python基礎語法 - json & pickle
amp pycharm ext con can 網絡傳輸 不兼容 rmp attr 情景 例1 dic = str({‘age‘:‘18‘}) f = open(‘text‘,‘w‘) f.write(dic) f.close() 例2 f = open(‘text‘
python基礎:匹配指定目錄下符合規則的文件,打印文件全路徑
python# -*- coding:utf-8 -*- #遍歷目錄樹 import os,fnmatch def all_files(root, patterns=‘*‘, single_level=False, yield_folder=False): # 將模式從字符串中取出放入列表中