海上月明

          editer by sun
          posts - 162, comments - 51, trackbacks - 0, articles - 8
             :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理

          【轉】python與sqlite中文數據的問題

          Posted on 2013-06-08 14:04 pts 閱讀(858) 評論(0)  編輯  收藏 所屬分類: Python

           

          【轉】python與sqlite中文數據的問題


          sqlite默認編碼是utf-8,在我們的PYTHON文件中設置文件保存編碼及輸出默認編碼都為utf-8

           

          在python安裝目錄lib/site-packages,下新建 sitecustomize.py
          輸入
          import sys
          sys.setdefaultencoding('utf-8') #set default encoding to utf-8

          python運行時自動設置編碼為utf-8

          往sqlite中插入數據然后直接print的時候,需要將數據編碼轉換為其他編碼,比如gbk

          使用方法:

               def Utf82Gb(self,str):        
                   return    str.decode('UTF-8').encode('gbk')

           

          就可以輕松解決往sqlite中插入中文數據正確顯示的問題~


          重大提醒:
          # Never do this -- insecure! 
          symbol = 'RHAT'
          c.execute("SELECT * FROM stocks WHERE symbol = '%s'" % symbol)
          # Do this instead
          t = ('RHAT',)
          c.execute('SELECT * FROM stocks WHERE symbol=?', t)
          同時如果涉及到中文,就是僅有一個字段,也要使用tuple形式

          主站蜘蛛池模板: 驻马店市| 土默特左旗| 财经| 清流县| 镇赉县| 陵川县| 华安县| 石狮市| 平果县| 交口县| 定兴县| 金坛市| 新巴尔虎左旗| 宜君县| 呼图壁县| 喀喇沁旗| 镇赉县| 巴彦淖尔市| 齐齐哈尔市| 睢宁县| 禄劝| 武宣县| 朝阳县| 观塘区| 徐闻县| 浦东新区| 瓮安县| 宝清县| 若尔盖县| 旬阳县| 长兴县| 岳阳县| 孟连| 泰州市| 德兴市| 陇川县| 阜康市| 新源县| 伊宁县| 瓮安县| 凌云县|