json.loads(json, strict=False)#關(guān)掉strict即可
Json的嚴(yán)格寫法應(yīng)該是: {"title": "\u6587\u7ae0\u6807\u9898\n\u6362\u884c"}
但是有的時(shí)候由于不嚴(yán)格: {"你在哪呢": "kiral"}
load時(shí)會(huì)造成錯(cuò)誤: JSONDecodeError: invalid control character
解決方案: json.loads(json, strict=False)#關(guān)掉strict即可
最近在做一些視頻分類的任務(wù),按照論文中的模型結(jié)果去做實(shí)驗(yàn),感覺有些技術(shù)上的小進(jìn)步,心里是安穩(wěn)些的。 在代碼上還是要繼續(xù)改進(jìn),寫出更flexible的代碼,就像收拾屋子,亂了就隨時(shí)收拾,一直保持整潔,不要積累到最后才搞大掃除,嗯嗯,繼續(xù)加油,穩(wěn)住!
可能的原因1:安裝的不是對(duì)應(yīng)python版本的庫,下載的庫名中cp27代表python2.7,其它同理。 可能的原因2:這個(gè)是我遇到的情況(下載的是對(duì)應(yīng)版本的庫,然后仍然提示不支持當(dāng)前平臺(tái)) 我下載到的numpy庫文件名: 使用pip安裝(在命令行中): 報(bào)錯(cuò):*** is not a supported wheel on this platform,通過在stackoverflow上的一個(gè)帖子成功解決問題。 方法:在shell中輸入import pip; print(pip.pep425tags.get_supported())可以獲取到pip支持的文件名還有版本,我這里如下: >>import pip; print(pip.pep425tags.get_supported()) [('cp27', 'none', 'win32'), ('py2', 'none', 'win32'), ('cp27', 'none', 'any'), ('cp2', 'none', 'any'), ('cp26', 'none', 'any'), ('cp25', 'none', 'any'), ('cp24', 'none', 'any'), ('cp23', 'none', 'any'), ('cp22', 'none', 'any'), ('cp21', 'none', 'any'), ('cp20', 'none', 'any'), ('py27', 'none', 'any'), ('py2', 'none', 'any'), ('py26', 'none', 'any'), ('py25', 'none', 'any'), ('py24', 'none', 'any'), ('py23', 'none', 'any'), ('py22', 'none', 'any'), ('py21', 'none', 'any'), ('py20', 'none', 'any')] 通過這里可以發(fā)現(xiàn)上面下載的文件名格式是不支持的,修改為:numpy-1.10.4+mkl-cp27-none-win32.whl即可成功安裝。 其它的庫也同理可以成功安裝,不過也請(qǐng)注意庫的依賴。
(參考帖子網(wǎng)址:http://stackoverflow.com/questions/28107123/cannot-install-numpy-from-wheel-format?rq=1) (python庫下載地址(庫很豐富,下載速度也很快):http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy)
1、python里import tensorflow時(shí)報(bào) “ImportError: /lib64/libc.so.6: version `GLIBC_2.17' not found (required by /usr/local/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow.so)”
glibc 升級(jí) GLIBC 升級(jí) 安裝包,自己編譯 由于centos6.5以下版本glibc最高為2.12,如果想要升級(jí),必須自己下載源碼,編譯升級(jí),但是從官網(wǎng)上下載的安裝包,需要一些其他的關(guān)聯(lián)包,安裝麻煩,且不利于其他機(jī)器的部署。 rpm安裝 從網(wǎng)上下載glibc-2.15.rpm,以及其他相關(guān)的glib安裝包, glibc-common-2.15-60.el6.x86_64.rpm glibc-devel-2.15-60.el6.x86_64.rpm glibc-2.15-60.el6.x86_64.rpm glibc-headers-2.17-60.el6.x86_64.rpm 這個(gè)包能找到就下,找不到就不用安裝了。 [下載好放到了nb01-sys-gpu-kongming13.nb01.baidu.com:/root/softwares/glibc217.tar]
nscd-2.12-1.192.el6.x86_64.rpm 在使用rpm安裝時(shí),需要忽略包的關(guān)聯(lián)性,否則無法正常安裝。 rpm -Uvh --nodeps *2.17-55.el6.x86_64.rpm --force 安裝好后,ldconfig 檢查ll /lib64/libc.* 此時(shí)可以看到glibc.so.6 已經(jīng)指向了2.17.so 注意 在安裝glibc時(shí),一定注意備份,因?yàn)橐坏┏鲥e(cuò),整個(gè)系統(tǒng)就會(huì)掛掉。
libstdc++.so.6 ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.19' not found Kongming 機(jī)器: export LD_PRELOAD=/home/opt/gcc-4.8.2.bpkg-r2/gcc-4.8.2.bpkg-r2/lib64/libstdc++.so.6
2. python里import tensorflow時(shí)報(bào) “ImportError: /usr/local/python27/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so: undefined symbol: PyUnicodeUCS4_FromString” 如果自己?jiǎn)为?dú)升級(jí)了python,或者有多個(gè)版本的python時(shí),便有可能出現(xiàn)此問題. 問題表象為:報(bào)錯(cuò):undefined symbol: PyUnicodeUCS2_AsUTF8String或者undefined symbol: PyUnicodeUCS4_AsUTF8String. 根本原因時(shí)python和某個(gè)你用的庫編譯時(shí)指定的UCS編碼方式不對(duì). 編譯python時(shí),可以通過指定--enable-unicode[=ucs[24]]來選擇使用UCS2或者UCS4. 如果你的錯(cuò)誤是undefined symbol: PyUnicodeUCS2_AsUTF8String,說明你的python編譯時(shí)使用的是UCS4,反之依然. 解決方案兩個(gè):1,重新編譯python,2,重新編譯庫. 選擇一般是重新編譯庫. 我這重新編譯python,因?yàn)閳?bào)錯(cuò)是PyUnicodeUCS4_FromString,說明tensorflow是用UCS4編譯的,而python是UCS2編譯的: 重新編譯時(shí)設(shè)置unicode為ucs4 ./configure --prefix=/usr/local/python27 --enable-unicode=ucs4 python2.7.11默認(rèn)是使用UCS2.
3. ImportError: No module named Tkinter https://www.douban.com/note/524197380/
在linux安裝了多版本python時(shí)(例如python2.6和2.7),pip安裝的包不一定是用戶想要的位置,此時(shí)可以用 -t 選項(xiàng)來指定位置. 例如目標(biāo)位置是/usr/local/lib/python2.7/site-packages/ ,要安裝xlrd 這個(gè)包,則: $ pip install -t /usr/local/lib/python2.7/site-packages/ xlrd
權(quán)限不夠則在命令前加sudo
最近寫的python腳本,在用print輸出的時(shí)候,都有一個(gè)很討厭的問題,就是print的輸出被延遲了。
根源是python默認(rèn)啟用了stdout緩沖,解決的辦法有兩種: 一種辦法是每次print后,都調(diào)用stdout flush(),把緩沖區(qū)打印出來,這個(gè)辦法比較麻煩,要重載stdout,不推薦。
最簡(jiǎn)單的方法是用命令行參數(shù)-u啟動(dòng)python,禁用stdout緩沖
比如腳本是build-native.py,運(yùn)行 python -u build-native.py就不會(huì)出現(xiàn)print延遲問題了
問題:在make pycaffe時(shí),可能會(huì)出現(xiàn): error: make: ***No rule to make target 'include/layers/python_layer.hpp, needed by 'python/caffe/_caffe.so'. Stop. 這是由于caffe的版本不同導(dǎo)致的。 解決方法: 在 include/caffe/layers/文件夾中的python_layer.hpp復(fù)制到include/caffe/文件夾下 再次make pycaffe,編譯成功
在其他地方打開python,使之可以import caffe: 添加環(huán)境變量: cd ~ vim /.bashrc 將export PYTHONPATH=/home/nielsen/caffe-master/python:$PYTHONPATH添加到文件中 source ~/.bashrc 使之生效
Liunx 運(yùn)行用 Intel MKL 庫文件的程序出錯(cuò) “error while loading shared libraries libmkl_intel.so” 解決辦法2012-06-05 18:19 本站整理 瀏覽(9) 編譯例子: gcc -o foo foo.c -I/opt/intel/mkl/10.1.0.015/include -L/opt/intel/mkl/10.1.0.015/lib/32 -lmkl_intel ... <other MKL libs> 錯(cuò)誤提示: ./foo: error while loading shared libraries libmkl_intel.so: cannot open shared object file No such file or directory 解決辦法:在Liunx 環(huán)境變量中加入Intel MKL 庫文件路徑 Intel 官網(wǎng)詳解: Before using the Intel® MKL shared libraries, update the system variable LD_LIBRARY_PATH to include the libraries location. For example, if the Intel MKL libraries are in the /opt/intel/mkl/10.1.0.015/lib/32 directory then the following command line can be used (assuming a bash shell): export LD_LIBRARY_PATH=/opt/intel/mkl/lib/ia32:$LD_LIBRARY_PATH
1. 修改 C:\wamp\bin\apache\Apache2.2.17\conf \httpd.conf(實(shí)現(xiàn)更改默認(rèn)網(wǎng)站路徑,即將DocumentRoot和Directory定向到自己的默認(rèn)目錄:E:/phproot/) 2. 重啟所有服務(wù)
假定矩形是用一對(duì)點(diǎn)表達(dá)的(minx, miny) (maxx, maxy),那么兩個(gè)矩形 rect1{(minx1, miny1)(maxx1, maxy1)} rect2{(minx2, miny2)(maxx2, maxy2)} 相交的結(jié)果一定是個(gè)矩形,構(gòu)成這個(gè)相交矩形rect{(minx, miny) (maxx, maxy)}的點(diǎn)對(duì)坐標(biāo)是: minx = max(minx1, minx2) miny = max(miny1, miny2) maxx = min(maxx1, maxx2) maxy = min(maxy1, maxy2) 如果兩個(gè)矩形不相交,那么計(jì)算得到的點(diǎn)對(duì)坐標(biāo)必然滿足: ( minx > maxx ) 或者 ( miny > maxy ) 判定是否相交,以及相交矩形是什么都可以用這個(gè)方法一體計(jì)算完成。 從這個(gè)算法的結(jié)果上,我們還可以簡(jiǎn)單的生成出下面的兩個(gè)內(nèi)容: ㈠ 相交矩形: (minx, miny) (maxx, maxy) ㈡ 面積: 面積的計(jì)算可以和判定一起進(jìn)行 if ( minx>maxx ) return 0; if ( miny>maxy ) return 0; return (maxx-minx)*(maxy-miny)
|