Python论坛  - 讨论区

标题:[python-chinese] 怎么以某一种编码来读取一个文件?

2007年11月07日 星期三 19:03

clfff.peter clfff.peter在gmail.com
星期三 十一月 7 19:03:11 HKT 2007

ÎÒÓÃchardetÀ´¼ì²âÎļþµÄ±àÂ룬±È·½ËµÎÒÖªµÀËüµÄ±àÂëÊÇ"gb2312"£¬ÎÒÏëÒÔgb2312À´¶ÁÈ¡ÎļþÖеÄÒ»ÐУ¬»òÒ»¸ö×Ö·û£¨¶ø²»ÊÇÒ»¸ö×Ö½Ú£©¡£
ÇëÎÊÔõÑù²ÅÄÜ×öµ½¡£
дxmlʱÊÇ¿ÉÒÔÓÃcodecs.lookupÀ´ÕÒµ½¶ÔÓ¦±àÂëµÄstream writer£¬ÊDz»ÊÇÎÒÒ²ÐèÒªÓõ½codecs²ÅÄÜÍê³É£¬Èç¹ûÊǸÃÔõô×ö£¿
»òÕß»¹ÓÐÆäËû·½·¨£¿
лл¡£
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20071107/71eae84f/attachment.html 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年11月07日 星期三 19:09

Dreamingk(天成) dreamingk在gmail.com
星期三 十一月 7 19:09:22 HKT 2007

一般用codecs.open 用指定的编码打开文件,没有试过打开之后,以不同的编码读取不同的行

On 11/7/07, clfff. peter <clfff.peter在gmail.com> wrote:
> 我用chardet来检测文件的编码,比方说我知道它的编码是"gb2312",我想以gb2312来读取文件中的一行,或一个字符(而不是一个字节)。
> 请问怎样才能做到。
> 写xml时是可以用codecs.lookup来找到对应编码的stream
> writer,是不是我也需要用到codecs才能完成,如果是该怎么做?
> 或者还有其他方法?
> 谢谢。
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to
> python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to
> python-chinese-request在lists.python.cn
> Detail Info:
> http://python.cn/mailman/listinfo/python-chinese
>


-- 
Dreamingk (tc, 天成)
    dreamingk(at)gmail.com
    http://python.cn
Exoweb (北京轩辕互动科技有限公司)
Python, I love this language.

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年11月07日 星期三 19:43

clfff.peter clfff.peter在gmail.com
星期三 十一月 7 19:43:05 HKT 2007

ÓÐûÓа취»ñÈ¡ÈÎÒâ±àÂëµÄÒ»¸ö×Ö·û£¨²»ÊÇÒ»¸ö×Ö½Ú£©£¿

ÔÚ07-11-7£¬Dreamingk(Ìì³É) <dreamingk在gmail.com> дµÀ£º
>
> Ò»°ãÓÃcodecs.open ÓÃÖ¸¶¨µÄ±àÂë´ò¿ªÎļþ£¬Ã»ÓÐÊÔ¹ý´ò¿ªÖ®ºó£¬ÒÔ²»Í¬µÄ±àÂë¶ÁÈ¡²»Í¬µÄÐÐ
>
> On 11/7/07, clfff. peter <clfff.peter在gmail.com> wrote:
> > ÎÒÓÃchardetÀ´¼ì²âÎļþµÄ±àÂ룬±È·½ËµÎÒÖªµÀËüµÄ±àÂëÊÇ"gb2312"£¬ÎÒÏëÒÔgb2312À´¶ÁÈ¡ÎļþÖеÄÒ»ÐУ¬»òÒ»¸ö×Ö·û£¨¶ø²»ÊÇÒ»¸ö×Ö½Ú£©¡£
> > ÇëÎÊÔõÑù²ÅÄÜ×öµ½¡£
> > дxmlʱÊÇ¿ÉÒÔÓÃcodecs.lookupÀ´ÕÒµ½¶ÔÓ¦±àÂëµÄstream
> > writer£¬ÊDz»ÊÇÎÒÒ²ÐèÒªÓõ½codecs²ÅÄÜÍê³É£¬Èç¹ûÊǸÃÔõô×ö£¿
> > »òÕß»¹ÓÐÆäËû·½·¨£¿
> > лл¡£
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese在lists.python.cn
> > Subscribe: send subscribe to
> > python-chinese-request在lists.python.cn
> > Unsubscribe: send unsubscribe to
> > python-chinese-request在lists.python.cn
> > Detail Info:
> > http://python.cn/mailman/listinfo/python-chinese
> >
>
>
> --
> Dreamingk (tc, Ìì³É)
>    dreamingk(at)gmail.com
>    http://python.cn
> Exoweb (±±¾©ÐùÔ¯»¥¶¯¿Æ¼¼ÓÐÏÞ¹«Ë¾)
> Python, I love this language.
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20071107/63b733bf/attachment.htm 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年11月07日 星期三 19:54

clfff.peter clfff.peter在gmail.com
星期三 十一月 7 19:54:56 HKT 2007

s=u'a'
len(s)
 len(s)ÔõôÊÇ1£¬¶ø²»ÊÇ2£¿ÎÒÓõÄÊÇuǰ׺£¬Ó¦¸ÃÊÇunicode°É£¿Ôõô»ØÊ£¿


ÔÚ07-11-7£¬clfff. peter <clfff.peter在gmail.com> дµÀ£º
>
> ÓÐûÓа취»ñÈ¡ÈÎÒâ±àÂëµÄÒ»¸ö×Ö·û£¨²»ÊÇÒ»¸ö×Ö½Ú£©£¿
>
> ÔÚ07-11-7£¬Dreamingk(Ìì³É) <dreamingk在gmail.com> дµÀ£º
> >
> > Ò»°ãÓÃcodecs.open ÓÃÖ¸¶¨µÄ±àÂë´ò¿ªÎļþ£¬Ã»ÓÐÊÔ¹ý´ò¿ªÖ®ºó£¬ÒÔ²»Í¬µÄ±àÂë¶ÁÈ¡²»Í¬µÄÐÐ
> >
> > On 11/7/07, clfff. peter < clfff.peter在gmail.com> wrote:
> > >
> > ÎÒÓÃchardetÀ´¼ì²âÎļþµÄ±àÂ룬±È·½ËµÎÒÖªµÀËüµÄ±àÂëÊÇ"gb2312"£¬ÎÒÏëÒÔgb2312À´¶ÁÈ¡ÎļþÖеÄÒ»ÐУ¬»òÒ»¸ö×Ö·û£¨¶ø²»ÊÇÒ»¸ö×Ö½Ú£©¡£
> > > ÇëÎÊÔõÑù²ÅÄÜ×öµ½¡£
> > > дxmlʱÊÇ¿ÉÒÔÓÃcodecs.lookupÀ´ÕÒµ½¶ÔÓ¦±àÂëµÄstream
> > > writer£¬ÊDz»ÊÇÎÒÒ²ÐèÒªÓõ½codecs²ÅÄÜÍê³É£¬Èç¹ûÊǸÃÔõô×ö£¿
> > > »òÕß»¹ÓÐÆäËû·½·¨£¿
> > > лл¡£
> > > _______________________________________________
> > > python-chinese
> > > Post: send python-chinese在lists.python.cn
> > > Subscribe: send subscribe to
> > > python-chinese-request在lists.python.cn
> > > Unsubscribe: send unsubscribe to
> > > python-chinese-request在lists.python.cn
> > > Detail Info:
> > > http://python.cn/mailman/listinfo/python-chinese
> > >
> >
> >
> > --
> > Dreamingk (tc, Ìì³É)
> >    dreamingk(at)gmail.com
> >    http://python.cn
> > Exoweb (±±¾©ÐùÔ¯»¥¶¯¿Æ¼¼ÓÐÏÞ¹«Ë¾)
> > Python, I love this language.
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese在lists.python.cn
> > Subscribe: send subscribe to python-chinese-request在lists.python.cn
> > Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> > Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
>
>
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20071107/61856fbc/attachment.html 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年11月07日 星期三 20:06

limodou limodou在gmail.com
星期三 十一月 7 20:06:05 HKT 2007

On 11/7/07, clfff. peter <clfff.peter在gmail.com> wrote:
> s=u'a'
> len(s)
>
> len(s)怎么是1,而不是2?我用的是u前缀,应该是unicode吧?怎么回事?
>
只有一个'a'当然是一个长度你,你觉得应该是多长,为什么?你的根据是什么?

-- 
I like python!
UliPad <>: http://code.google.com/p/ulipad/
meide <>: http://code.google.com/p/meide/
My Blog: http://www.donews.net/limodou

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年11月08日 星期四 09:41

clfff.peter clfff.peter在gmail.com
星期四 十一月 8 09:41:24 HKT 2007

²»ºÃÒâ˼£¬ÊÇÎÒ×Ô¼º¸ã´íÁË¡£
ÁíÍâÎÊһϣ¬pythonÄÚ²¿µÄunicodeÀàÐ͵ÄÊý¾ÝÊDz»ÊÇÓëÎÒÃÇͨ³£ËµµÄ"utf-16"ÍêÈ«²»Ïà¹Ø£¿
ÁíÍ⣬ÎÒÈç¹ûÏëÒª¼ìÑéÒ»¸öÈÎÒâ±àÂëµÄ×Ö´®ÖÐÊÇ·ñº¬ÓÐijЩ±êµã£¬ÊDz»ÊÇ¿ÉÒÔÓÃÏÂÃæµÄ²½Ö裺
1¡¢detect±àÂëÀàÐÍ£¨ÓÃchardet£©
2¡¢×ª»»ÎªpythonµÄunicodeÀàÐÍ£¨ÓÃdecode£©£¬×ª»»ºóµÄ×Ö´®£ºustr
3¡¢ÓÃused_seps=[u"\n",u"\r",
u"?",u"!",u";",u":",u".",u"'",u'"',¡£¡£¡£¡£¡£]À´¼ìÑéÊÇ·ñustrÖк¬ÓÐijЩ±êµã¡£
²»ÖªÉÏÃæµÄ·½·¨ÊÇ·ñÓÐʲôÎÊÌ⣿

лл¡£


ÔÚ07-11-7£¬limodou <limodou在gmail.com> дµÀ£º
>
> On 11/7/07, clfff. peter <clfff.peter在gmail.com> wrote:
> > s=u'a'
> > len(s)
> >
> > len(s)ÔõôÊÇ1£¬¶ø²»ÊÇ2£¿ÎÒÓõÄÊÇuǰ׺£¬Ó¦¸ÃÊÇunicode°É£¿Ôõô»ØÊ£¿
> >
> Ö»ÓÐÒ»¸ö'a'µ±È»ÊÇÒ»¸ö³¤¶ÈÄ㣬Äã¾õµÃÓ¦¸ÃÊǶ೤£¬ÎªÊ²Ã´£¿ÄãµÄ¸ù¾ÝÊÇʲô£¿
>
> --
> I like python!
> UliPad <>: http://code.google.com/p/ulipad/
> meide <>: http://code.google.com/p/meide/
> My Blog: http://www.donews.net/limodou
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20071108/316d6ae4/attachment.html 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年11月09日 星期五 12:59

Ben Luo benluo在gmail.com
星期五 十一月 9 12:59:14 HKT 2007

On Nov 8, 2007 9:41 AM, clfff. peter <clfff.peter在gmail.com> wrote:

> ²»ºÃÒâ˼£¬ÊÇÎÒ×Ô¼º¸ã´íÁË¡£
> ÁíÍâÎÊһϣ¬pythonÄÚ²¿µÄunicodeÀàÐ͵ÄÊý¾ÝÊDz»ÊÇÓëÎÒÃÇͨ³£ËµµÄ"utf-16"ÍêÈ«²»Ïà¹Ø£¿
> ÁíÍ⣬ÎÒÈç¹ûÏëÒª¼ìÑéÒ»¸öÈÎÒâ±àÂëµÄ×Ö´®ÖÐÊÇ·ñº¬ÓÐijЩ±êµã£¬ÊDz»ÊÇ¿ÉÒÔÓÃÏÂÃæµÄ²½Ö裺
> 1¡¢detect±àÂëÀàÐÍ£¨ÓÃchardet£©
> 2¡¢×ª»»ÎªpythonµÄunicodeÀàÐÍ£¨ÓÃdecode£©£¬×ª»»ºóµÄ×Ö´®£ºustr
> 3¡¢ÓÃused_seps=[u"\n",u"\r",
> u"?",u"!",u";",u":",u".",u"'",u'"',¡£¡£¡£¡£¡£]À´¼ìÑéÊÇ·ñustrÖк¬ÓÐijЩ±êµã¡£
> ²»ÖªÉÏÃæµÄ·½·¨ÊÇ·ñÓÐʲôÎÊÌ⣿
>
> лл¡£
>
Python 3.0ÒѾ­¶¼ÊÇunicodeÁË¡£
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20071109/33bd3d1a/attachment.html 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2007年11月09日 星期五 16:10

clfff.peter clfff.peter在gmail.com
星期五 十一月 9 16:10:05 HKT 2007

ÔÚ07-11-9£¬Ben Luo <benluo在gmail.com> дµÀ£º
>
>  Python 3.0ÒѾ­¶¼ÊÇunicodeÁË¡£
> >
> Õâ¾ä»°ÊÇʲôÒâ˼ÄØ£¿



_______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to  python-chinese-request在lists.python.cn
> Detail Info: http://python.cn/mailman/listinfo/python-chinese
>
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20071109/7eeff782/attachment.htm 

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]
cyt

cyt

2007年11月09日 星期五 16:32

yuting cui yutingcui在gmail.com
星期五 十一月 9 16:32:42 HKT 2007

3的str基本和2的unicode等价
新增bytes类型,bytes和str之间的操作必须显式转换
详细的去看3.0的文档就好


在 07-11-9,clfff. peter<clfff.peter在gmail.com> 写道:
> 在07-11-9,Ben Luo <benluo在gmail.com> 写道:
> >
> >
> > >
> > > Python 3.0已经都是unicode了。
> >
>
> 这句话是什么意思呢?
>
>
>
> > _______________________________________________
> > python-chinese
> > Post: send python-chinese在lists.python.cn
> > Subscribe: send subscribe to
> python-chinese-request在lists.python.cn
> > Unsubscribe: send unsubscribe to
> python-chinese-request在lists.python.cn
> > Detail Info:
> http://python.cn/mailman/listinfo/python-chinese
> >
>
>
> _______________________________________________
> python-chinese
> Post: send python-chinese在lists.python.cn
> Subscribe: send subscribe to
> python-chinese-request在lists.python.cn
> Unsubscribe: send unsubscribe to
> python-chinese-request在lists.python.cn
> Detail Info:
> http://python.cn/mailman/listinfo/python-chinese
>

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2025

    京ICP备05028076号