python全局变量

python跟c语言不同,在局部作用域申明同名的变量,它会生成一个新的局部变量,而不是使用外边的变量,因为它没有像c语言int a; a=4这样的定义方式和引用方式。 在这里,fun里面的cnt是属于fun的局部变量的,跟外边的cnt不是同一个cnt。 如果要对外边的cnt进行操作,则需要先要使用global关键字进行申明,说明使用的是全局变量cnt,而不是在fun中重新分配一个新的cnt变量。

   global cnt  
   cnt=0  
   def fun():  
      global cnt  
      cnt+=1  
      pass  
 

ps:

python 的排序很方便,元素为整数或者字符串的序列和字典的排列方法只需要str.sort()就ok了,下面是元素为对象的字典或序列的排序方法:

  userlist.sort(lambda x,y: cmp(x.user_userName, y.user_userName))

这里是按照对象的user_userName属性进行升序排列的

posted @ 2013-04-02 13:59  编缘  阅读(134)  评论(0编辑  收藏  举报