成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python print正確使用方法淺析

開發 后端
Python print的基本應用在實際程序編寫中是一個比較重要的應用技術。我們將會在這里針對這一問題做一個詳細的介紹。

Python編程語言是一款比較新穎的編程語言,相對于其他語言來說,有很多不同的特點引起了大多數開發人員的興趣。在這里我們可以先從Python print的相關應用方法來分析,初步了解這一語言的應用方式。

Python print會對輸出的文本做自動的編碼轉換,而文件對象的write方法就不會做,因此,當一些字符串用print輸出正常時,write到文件確不一定和print的一樣。print轉換的目的編碼和環境變量有關,Windows XP是轉換為gbk的。在linux下是按照環境變量來轉換的。在linux下使用locale命令就可以看到。比如我的是:

  1. [zhaowei@papaya zhaowei]$ locale  
  2. LANG=zh_CN 
  3. LC_CTYPE="zh_CN" 
  4. LC_NUMERIC="zh_CN" 
  5. LC_TIME="zh_CN" 
  6. LC_COLLATE="zh_CN" 
  7. LC_MONETARY="zh_CN" 
  8. LC_MESSAGES="zh_CN" 
  9. LC_PAPER="zh_CN" 
  10. LC_NAME="zh_CN" 
  11. LC_ADDRESS="zh_CN" 
  12. LC_TELEPHONE="zh_CN" 
  13. LC_MEASUREMENT="zh_CN" 
  14. LC_IDENTIFICATION="zh_CN" 
  15. LC_ALL

這個時候會認為是gb2312的。在python中可以用locale模塊來獲得當前環境的編碼:

  1. import locale  
  2. print locale.getdefaultlocale() 

Python print在輸出時把字符串自動裝換為這個編碼。看看下面,"喆"這個字是很著名的一個在gb2312中沒有的字,當把它轉換為gb2312的時候是會出錯的。

  1. #-*- encoding: gb18030 -*-  
  2. import locale  
  3. import sys, encodings, encodings.aliases  
  4. # 現在a是unicode的  
  5. a = u'喆' 
  6. print a.encode("gb2312") 

上面這段代碼會報異常,就是這個原因。但如果是直接 print a 就可以輸出來 (假設你的環境變量是GBK或者GB18030或者UTF-8)。如果你的環境變量是GB2312的,那這個print一樣會報錯!所以在處理其他地方來 的文本數據時,***不要用GB2312的編碼,是中文數據,一定要用GB18030或者UTF-8!

而用文件對象的write寫unicode的數據也是會出錯的!需要做編碼轉換

  1. #-*- encoding: gb18030 -*-  
  2. import locale  
  3. import sys, encodings, encodings.aliases  
  4. # 現在a是unicode的  
  5. a = u'喆' 
  6. f = open("aaa.txt", "w")  
  7. f.write(a)  
  8. f.close() 

以上就是我們對Python print的相關介紹。

【編輯推薦】

  1. Python算法正確實現方式介紹
  2. Python CGI環境在不同操作系統中配置方法
  3. Python解密VBS基本應用代碼講解
  4. 深入探討Python ConfigParser模塊正確應用方式
  5. Python讀取輸入值相關應用技巧分享
責任編輯:曹凱 來源: 博客園
相關推薦

2010-01-26 17:35:09

C++棧

2010-03-05 14:09:19

Python sys.

2011-04-27 16:38:31

投影機

2009-11-17 15:00:19

PHP遍歷數組

2010-03-02 14:12:30

WCF枚舉類型

2023-06-28 11:36:41

2011-07-19 17:18:35

Objective-C Property

2009-09-08 14:54:40

C# listBox控

2009-08-28 16:31:21

C# treeview

2009-11-26 15:23:24

PHP函數ereg()

2010-01-20 17:47:54

VB.NET注釋

2009-12-02 14:50:25

PHP接口類inter

2010-02-23 11:06:16

WCF可信賴會話

2010-03-01 17:39:07

WCF Address

2010-05-04 09:44:12

Oracle Trig

2009-11-26 18:49:54

PHP函數preg_s

2010-03-02 16:58:11

AJAX WCF服務項

2011-05-05 14:01:03

投影機

2010-01-18 13:12:43

VB.NET控件數組

2011-02-24 13:09:10

FireFTP
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91久久久久久久久久久 | 国产免费一区二区三区 | 欧美性高潮 | 成人午夜电影在线观看 | 国产日韩一区二区三免费高清 | 久久久精品一区二区三区 | 成人伊人网 | 日韩精品一区二区三区第95 | 美女天天操| 伊人狠狠操| 第四色影音先锋 | 欧美一级片在线看 | 日本理论片好看理论片 | 欧美一级黑人aaaaaaa做受 | 久久国产福利 | 久草福利 | 免费人成在线观看网站 | 日本在线黄色 | 亚洲一区二区三区欧美 | 国产综合在线视频 | 美国黄色毛片 | 久久一区二区三区四区 | 久久99视频这里只有精品 | 日韩精品久久久 | 日韩精品在线播放 | 懂色中文一区二区三区在线视频 | 激情五月综合 | 色综合成人网 | 中文字幕三区 | www.精品一区 | 精品国产鲁一鲁一区二区张丽 | 国产精品一区一区三区 | 精品综合| 欧美一级在线 | 五月天婷婷综合 | 色女人天堂 | 男人的天堂视频网站 | 国产精品黄色 | 天天综合干| 久久一区二区三区四区五区 | 欧美日韩国产一区二区三区不卡 |