易截截图软件、单文件、免安装、纯绿色、仅160KB

Python、Unicode和中文[转]


关键字: python
Python、Unicode和中文[转] 
python的中文问题一直是困扰新手的头疼问题,这篇文章将给你详细地讲解一下这方面的知识。当然,几乎可以确定的是,在将来的版本中,python会彻底解决此问题,不用我们这么麻烦了。 
先来看看python的版本: 
>>> import sys 
>>> sys.version 
'2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)]' 
(一) 
用记事本创建一个文件ChineseTest.py,默认ANSI: 
s = "中文" 
print s 
测试一下瞧瞧: 
E:\Project\Python\Test>python ChineseTest.py 
  File "ChineseTest.py", line 1 
SyntaxError: Non-ASCII character '\xd6' in file ChineseTest.py on line 1, but no encoding declared; see http://www.pytho 
n.org/peps/pep-0263.html for details 
偷偷地把文件编码改成UTF-8: 
E:\Project\Python\Test>python ChineseTest.py 
  File "ChineseTest.py", line 1 
SyntaxError: Non-ASCII character '\xe4' in file ChineseTest.py on line 1, but no encoding declared; see http://www.pytho 
n.org/peps/pep-0263.html for details 
无济于事。。。 
既然它提供了网址,那就看看吧。简单地浏览一下,终于知道如果文件里有非ASCII字符,需要在第一行或第二行指定编码声明。把ChineseTest.py文件的编码重新改为ANSI,并加上编码声明: 
# coding=gbk 
s = "中文" 
print s 
再试一下: 
E:\Project\Python\Test>python ChineseTest.py 
中文 
正常咯:) 
(二) 
看一看它的长度: 
# coding=gbk 
s = "中文" 
print len(s) 
结果:4。 
s这里是str类型,所以计算的时候一个中文相当于两个英文字符,因此长度为4。 
我们这样写: 
# coding=gbk 
s = "中文" 
s1 = u"中文" 
s2 = unicode(s, "gbk") #省略参数将用python默认的ASCII来解码 
s3 = s.decode("gbk") #把str转换成unicode是decode,unicode函数作用与之相同 
print len(s1) 
print len(s2) 
print len(s3) 
结果: 


相关文档:

python的变参


python的变参
*args和**dargs是Python的两个可
变参数,两者有所不同的是*args是个tuple,**dargs是个dict。
*args
和**dargs并用时,*args必须放在**dargs的前面。
例如:
def func(a,b, *c):
    pass
函数func至少有两个参数变参数放在tuple  c中
def func(*c): 或者 def  func(**d ......

使用Python读SEGY道头

自己遇到的一个问题, WestGeco的3D地震数据, 提取导航数据:
#!/bin/env python
import sys
import struct
try:
        f=open(sys.argv[1],'rb')
except (IOError,Exception):
    print '''usage:
        scriptname segyfilename
'''
&nbs ......

深入Python摘要

英文版Dive in python可以在下面找到中文翻译http://linuxtoy.org/docs/dip/toc/index.html
模块的__name__,当模块被import时,其为模块的名字,当模块作为main执行的时候,其为__main__
词典的key是大小写敏感的。
List也支持重载+操作,用于将两个list连接起来,并返回一个List,因此它没有extended执行高效。list也+ ......

Python Get Key press

refer from:  http://www.daniweb.com/forums/thread115282.html#
python
Syntax
(Toggle Plain Text
)

# respond to a key
without the need to press
enter
 
import
Tkinter
as tk
 
def
keypress(
event)
:
if
event.keysym
== 'Escape'
:
root.destroy
......

[原创]Python(pysvn)提取svn版本间改动文件列表

[原创]Python(pysvn)提取svn版本间改动文件列表
by AKara 2010.04.29 @ http://blog.csdn.net/akara @ akaras@163.com
---------------------------------------------------------------------
 
  希望实现一个提取两个svn revision间有变动(增/删/改)的文件的列表
的命令行工具;可以帮我们项目做一些流 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号