Python论坛  - 讨论区

标题:Re: [python-chinese] 问一个关于moinmoin的问题

2004年08月09日 星期一 10:58

Zoom.Quiet zoomq at itcase.com
Mon Aug 9 10:58:09 HKT 2004

Hollo Jerry:

  呃??根发布时的中文声明没有关系哪??

Apache 的解析编码修改否?
另外MoinMoin 的 moin_config.py
中有相关设置的是也乎??

# encoding and WikiName char sets
# (change only for outside America or Western Europe)
check_i18n = 1
charset = 'utf-8'


/******** [2004-08-09]10:56:45 ; Jerry wrote:

Jerry Marx> python-chinese,您好!

Jerry Marx> 	系统是windows2k.安装了apache2.apache显示中文没有问题
Jerry Marx> 	moinmoin 的页面我加入中文字不能正常显示.
Jerry Marx> 	我已经将每页最前面设置为 ##language:zh
Jerry Marx> 	要设置什么地方才能正常显示中文呢?
Jerry Marx> 	对了.python版本是2.3.
Jerry Marx> 	谢谢.

Jerry Marx>         致
Jerry Marx> 礼!
 				

Jerry Marx>         Jerry Marx
Jerry Marx>         zhiyuan.ma at enorbus.com.cn
Jerry Marx>           2004-08-09


********************************************/

-- 
Free as in Freedom

 Zoom.Quiet                           

#=========================================#
]Time is unimportant, only life important![
#=========================================#

sender is the Bat!2.12.00



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

2004年08月09日 星期一 11:28

hoxide hoxide_dirac at yahoo.com.cn
Mon Aug 9 11:28:33 HKT 2004

Dirk Ye,您好! 

     就是这么回事.

======== 2004-08-09 10:19:25 您在来信中写道: ========

我的理解:
 
    这里的问题不仅仅是引用这么简单,其实这是普遍的编译器(解释器也应该如此)针对性能的一种优化,具体分析如下:
    编译器/解释器为了节约系统资源以及提高本身的效率,面对常量值和变量值会区别对待:
 
    1、当解释器看到两个相同值的常量变量的时候,他们不会申请新的内存,只是增加第一个变量的地址引用数,所以你看到初始的a和b是相同的地址;但如果你要改变a或b的值以后,a和b的引用地址将不再相同,因为解释器会为修改的变量重新申请内存并修改相应的地址引用。
    2、当解释器遇到的是可变变量的时候,它认为用户会随时改变变量值,所以使用的是不同的地址。
 
    在Python中,字符串和元组是属于常量变量,他们符合第一种情况;而序列属于可变变量,符合第二种情况。
 
    验证如下:
 
 
>>> a = "time"
>>> b = "time"
>>> id(a)
16636288
>>> id(b)
16636288
>>> a += "s"
>>> id(a)
20165312
>>> id(b)
16636288
>>> m = ("time")
>>> n = ("time")
>>> id(m)
16636288
>>> id(n)
16636288
>>> s = ["time"]
>>> t = ["time"]
>>> id(s)
20361424
>>> id(t)
20515760
>>> 
 
 
请指正!!!
 
   
 
 
----- Original Message ----- 
From: zhou hunter 
To: python-chinese at lists.python.cn 
Sent: Sunday, August 08, 2004 7:49 AM
Subject: [python-chinese] 关于相同列表与字符串的id值问题


wish you a good day:
          在整理笔记中有一个问题,举例子如下:
>>> a="time"
>>> b="time"
>>> id(a)
12616688
>>> id(b)
12616688#id值可以看出a,b指向且都指向“time"
>>> a=['time']
>>> b=['time']
>>> id(a)
15300640
>>> id(b)
15300680#可以看除a,b 指向了 “【"time"】”但两个time却不同。
1,id是对数据的唯一标识符,"time"与"time"是同一数据,而列表的却截然不同
2,数据应是储存在内存的,那么“time"与'time'是同一位置,而列表的却不是。
我想请问到底为什么一旦列表,即使相同表的实际指向却是不同的,而不列表却相同?(我正在搜索这些资料,希望可以找到)

        谢谢
                zhou_hunter




Do You Yahoo!?
150万曲MP3疯狂搜,带您闯入音乐殿堂
美女明星应有尽有,搜遍美图、艳图和酷图
1G就是1000兆,雅虎电邮自助扩容! 



_______________________________________________
python-chinese list
python-chinese at lists.python.cn
http://python.cn/mailman/listinfo/python-chinese


= = = = = = = = = = = = = = = = = = = = = = 
        致
礼!

              hoxide
              hoxide_dirac at yahoo.com.cn
               2004-08-09

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

2004年08月09日 星期一 12:20

hoxide hoxide_dirac at yahoo.com.cn
Mon Aug 9 12:20:52 HKT 2004

Gary Jia,您好!

	这点我的确没看出来:)

======= 2004-08-09 12:21:23 您在来信中写道:=======

>有一点你搞错了
>那就是('time')  并不是元组它仍然是一个字符窜
>你可以通过type方法来看。
>如果你需要一个元组应该是 ('time',)
>所以两个值相等的元组和序列都有不同的地址。
>
>-----邮件原件-----
>发件人: python-chinese-bounces at lists.python.cn
>[mailto:python-chinese-bounces at lists.python.cn] 代表 hoxide
>发送时间: 2004年8月9日 11:29
>收件人: python-chinese at lists.python.cn
>主题: Re: Re: [python-chinese] 关于相同列表与字符串的id值问题
>
>Dirk Ye,您好! 
>
>     就是这么回事.
>
>======== 2004-08-09 10:19:25 您在来信中写道: ========
>
>我的理解:
> 
>    这里的问题不仅仅是引用这么简单,其实这是普遍的编译器(解释器也应该如此)
>针对性能的一种优化,具体分析如下:
>    编译器/解释器为了节约系统资源以及提高本身的效率,面对常量值和变量值会区
>别对待:
> 
>    1、当解释器看到两个相同值的常量变量的时候,他们不会申请新的内存,只是增
>加第一个变量的地址引用数,所以你看到初始的a和b是相同的地址;但如果你要改变a
>或b的值以后,a和b的引用地址将不再相同,因为解释器会为修改的变量重新申请内存
>并修改相应的地址引用。
>    2、当解释器遇到的是可变变量的时候,它认为用户会随时改变变量值,所以使用
>的是不同的地址。
> 
>    在Python中,字符串和元组是属于常量变量,他们符合第一种情况;而序列属于可
>变变量,符合第二种情况。
> 
>    验证如下:
> 
> 
>>>> a = "time"
>>>> b = "time"
>>>> id(a)
>16636288
>>>> id(b)
>16636288
>>>> a += "s"
>>>> id(a)
>20165312
>>>> id(b)
>16636288
>>>> m = ("time")
>>>> n = ("time")
>>>> id(m)
>16636288
>>>> id(n)
>16636288
>>>> s = ["time"]
>>>> t = ["time"]
>>>> id(s)
>20361424
>>>> id(t)
>20515760
>>>> 
> 
> 
>请指正!!!
> 
>   
> 
> 
>----- Original Message -----
>From: zhou hunter
>To: python-chinese at lists.python.cn
>Sent: Sunday, August 08, 2004 7:49 AM
>Subject: [python-chinese] 关于相同列表与字符串的id值问题
>
>
>wish you a good day:
>          在整理笔记中有一个问题,举例子如下:
>>>> a="time"
>>>> b="time"
>>>> id(a)
>12616688
>>>> id(b)
>12616688#id值可以看出a,b指向且都指向“time"
>>>> a=['time']
>>>> b=['time']
>>>> id(a)
>15300640
>>>> id(b)
>15300680#可以看除a,b 指向了 “【"time"】”但两个time却不同。
>1,id是对数据的唯一标识符,"time"与"time"是同一数据,而列表的却截然不同
>2,数据应是储存在内存的,那么“time"与'time'是同一位置,而列表的却不是。
>我想请问到底为什么一旦列表,即使相同表的实际指向却是不同的,而不列表却相同?
>(我正在搜索这些资料,希望可以找到)
>
>        谢谢
>                zhou_hunter
>
>
>
>
>Do You Yahoo!?
>150万曲MP3疯狂搜,带您闯入音乐殿堂
>美女明星应有尽有,搜遍美图、艳图和酷图
>1G就是1000兆,雅虎电邮自助扩容! 
>
>
>
>_______________________________________________
>python-chinese list
>python-chinese at lists.python.cn
>http://python.cn/mailman/listinfo/python-chinese
>
>
>= = = = = = = = = = = = = = = = = = = = = = 
>        致
>礼!
>
>              hoxide
>              hoxide_dirac at yahoo.com.cn
>               2004-08-09
>_______________________________________________
>python-chinese list
>python-chinese at lists.python.cn
>http://python.cn/mailman/listinfo/python-chinese
>

= = = = = = = = = = = = = = = = = = = =
			

        致
礼!
 
				 
        hoxide
        hoxide_dirac at yahoo.com.cn
          2004-08-09


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

2004年08月09日 星期一 12:21

Gary Jia gary at exoweb.net
Mon Aug 9 12:21:23 HKT 2004

有一点你搞错了
那就是('time')  并不是元组它仍然是一个字符窜
你可以通过type方法来看。
如果你需要一个元组应该是 ('time',)
所以两个值相等的元组和序列都有不同的地址。

-----邮件原件-----
发件人: python-chinese-bounces at lists.python.cn
[mailto:python-chinese-bounces at lists.python.cn] 代表 hoxide
发送时间: 2004年8月9日 11:29
收件人: python-chinese at lists.python.cn
主题: Re: Re: [python-chinese] 关于相同列表与字符串的id值问题

Dirk Ye,您好! 

     就是这么回事.

======== 2004-08-09 10:19:25 您在来信中写道: ========

我的理解:
 
    这里的问题不仅仅是引用这么简单,其实这是普遍的编译器(解释器也应该如此)
针对性能的一种优化,具体分析如下:
    编译器/解释器为了节约系统资源以及提高本身的效率,面对常量值和变量值会区
别对待:
 
    1、当解释器看到两个相同值的常量变量的时候,他们不会申请新的内存,只是增
加第一个变量的地址引用数,所以你看到初始的a和b是相同的地址;但如果你要改变a
或b的值以后,a和b的引用地址将不再相同,因为解释器会为修改的变量重新申请内存
并修改相应的地址引用。
    2、当解释器遇到的是可变变量的时候,它认为用户会随时改变变量值,所以使用
的是不同的地址。
 
    在Python中,字符串和元组是属于常量变量,他们符合第一种情况;而序列属于可
变变量,符合第二种情况。
 
    验证如下:
 
 
>>> a = "time"
>>> b = "time"
>>> id(a)
16636288
>>> id(b)
16636288
>>> a += "s"
>>> id(a)
20165312
>>> id(b)
16636288
>>> m = ("time")
>>> n = ("time")
>>> id(m)
16636288
>>> id(n)
16636288
>>> s = ["time"]
>>> t = ["time"]
>>> id(s)
20361424
>>> id(t)
20515760
>>> 
 
 
请指正!!!
 
   
 
 
----- Original Message -----
From: zhou hunter
To: python-chinese at lists.python.cn
Sent: Sunday, August 08, 2004 7:49 AM
Subject: [python-chinese] 关于相同列表与字符串的id值问题


wish you a good day:
          在整理笔记中有一个问题,举例子如下:
>>> a="time"
>>> b="time"
>>> id(a)
12616688
>>> id(b)
12616688#id值可以看出a,b指向且都指向“time"
>>> a=['time']
>>> b=['time']
>>> id(a)
15300640
>>> id(b)
15300680#可以看除a,b 指向了 “【"time"】”但两个time却不同。
1,id是对数据的唯一标识符,"time"与"time"是同一数据,而列表的却截然不同
2,数据应是储存在内存的,那么“time"与'time'是同一位置,而列表的却不是。
我想请问到底为什么一旦列表,即使相同表的实际指向却是不同的,而不列表却相同?
(我正在搜索这些资料,希望可以找到)

        谢谢
                zhou_hunter




Do You Yahoo!?
150万曲MP3疯狂搜,带您闯入音乐殿堂
美女明星应有尽有,搜遍美图、艳图和酷图
1G就是1000兆,雅虎电邮自助扩容! 



_______________________________________________
python-chinese list
python-chinese at lists.python.cn
http://python.cn/mailman/listinfo/python-chinese


= = = = = = = = = = = = = = = = = = = = = = 
        致
礼!

              hoxide
              hoxide_dirac at yahoo.com.cn
               2004-08-09

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

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

    你的回复:

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

    Zeuux © 2024

    京ICP备05028076号