参数传递

1 a = 1
2 def fun(a):
3 a = 2
4 fun(a)
5 print a
6
7 # 输出: 1
 a = []
def fun(a):
a.append(1)
fun(a)
print a # 输出 [1]
    第一个,执行完 a = 1, 在当前命名空间里有一个标识符a 指向了一个整形变量 1 , 传入fun之后,fun的局部命名空间里有一个标识符a 指向了传进来的 1,  此时 将局部空间的a = 2, 那么他将指向整数2, 而函数体外面的不受影响
    第二个,fun 里的标识符a 和外面的标识符a 都指向了同一个内存中的列表,所以函数体外的a也收到了影响
 

元类

    类就是一组用来描述如何生成一个对象的代码段  

    元类就是一种类,他的作用是来产生一个类,就好比Int这个类用来产生一个整数
    一个比较好的文章: http://python.jobbole.com/21351/

类属性和实例属性

看一个比较坑的例子:

 class A():
a = 1 #类属性
a = A()
b = A()
print(A.a, a.a, b.a)
#输出 1 ,1 ,1
a.a = 2
print(A.a, a.a, b.a)
#输出 1, 2, 1 既然是类属性,为什么b的没有改变?
A.a = 3
print(A.a, a.a, b.a)
# 3, 2, 3 为什么b跟随着A改变了,而a没有呢?
        第2行,定义了一个类属性 a = 1,  第5行执行 a.a的时候, 发现对象a并没有名字为a的实例属性,于是就去a的类里面查找类属性a
 第7行, a.a = 2, 这句代码,会为a添加一个实例属性, 会覆盖掉之前的类属性a,所以产生了10的输出, 而10行的操作,由于a已经有实例属性a,b没有,所以发生了14行的输出

迭代器和生成器

  pass  先占个位置

GIL锁

多线程中都会遇到的一个问题,不同线程对共享资源访问的互斥。GIL(Global Interpreter Lock) 全局解释器锁,就是python用来解决这一问题的。python中的GIL是一个非常霸道的实现,他直接作用于python解释器一级。也就是说,在一个线程拥有了解释器的访问权限之后,其他线程都必须等待他释放解释器的访问权限,即使这些线程之间并没有相互影响。
 

关于python,一些整理的更多相关文章

  1. python django整理(五)配置favicon.ico,解决警告Not Found: /favicon.ico(转载)

    版权声明:本文为博主原创文章,欢迎交流分享,未经博主允许不得转载. https://blog.csdn.net/HHTNAN/article/details/78549561 Django 浏览器打开 ...

  2. python基础整理笔记(五)

    一. python中正则表达式的一些查漏补缺 1.  给括号里分组的表达式加上别名:以便之后通过groupdict方法来方便地获取. 2.  将之前取名为"name"的分组所获得的 ...

  3. python基础整理笔记(四)

    一. python 打开文件的方法 1. python中使用open函数打开文件,需要设定的参数包括文件的路径和打开的模式.示例如下: f = open('a.txt', 'r+') 2. f为打开文 ...

  4. python基础整理笔记(一)

    一. 编码 1. 在python2里,加载py文件会对字符进行编码,需要在文件头上的注释里注明编码类型(不加则默认是ascII). # -*- coding: utf-8 -*- print 'hel ...

  5. Python模块整理(三):子进程模块subprocess

    文章 原始出处 http://ipseek.blog.51cto.com/1041109/807513. 本来收集整理网络上相关资料后整理: 从python2.4版本开始,可以用subprocess这 ...

  6. python基础整理----基本概念和知识

    整理一下python的基本概念和知识, 主要用python3为语法标准. python介绍 一种面向对象的解释性计算机设计语言,具有丰富和强大的库. python定位:"优雅".& ...

  7. python模块整理29-redis模块

    date:20140530auth:jinhttp://github.com/andymccurdy/redis-pyhttps://github.com/andymccurdy/redis-py/b ...

  8. 这几天加班熬夜把所有Python库整理了一遍,非常全面!

    库名称简介 Chardet 字符编码探测器,可以自动检测文本.网页.xml的编码.colorama 主要用来给文本添加各种颜色,并且非常简单易用.Prettytable 主要用于在终端或浏览器端构建格 ...

  9. Python库整理

    库名称简介 Chardet字符编码探测器,可以自动检测文本.网页.xml的编码. colorama主要用来给文本添加各种颜色,并且非常简单易用. Prettytable主要用于在终端或浏览器端构建格式 ...

  10. 使用Python爬虫整理小说网资源-自学

    第一次接触python,原本C语言的习惯使得我还不是很适应python的语法风格.希望读者能够给出建议. 相关的入门指导来自以下的网址:https://blog.csdn.net/c406495762 ...

随机推荐

  1. sql单表中某一字段重复,取最近3条或几条数据

    order by a.uid,a.id; sql查询语句,针对需求:一个表中某一字段是有重复的数据,针对该字段相同的值只取最近的3条或要求的几条: --记录铭心!

  2. Windows下安装Redis

    1.首先,Redis官方是支持Linux系统的,我这里不多说,需要的可以参考:http://www.oschina.net/question/12_18065/ 2.Windows 64位下载地址:h ...

  3. 你不知道的this—JS异步编程中的this

    Javascript小学生都知道了javascript中的函数调用时会 隐性的接收两个附加的参数:this和arguments.参数this在javascript编程中占据中非常重要的地位,它的值取决 ...

  4. MIT 6.828 JOS学习笔记8. Exercise 1.4

    Lab 1 Exercise 4 阅读关于C语言的指针部分的知识.最好的参考书自然是"The C Programming Language". 阅读5.1到5.5节.然后下载poi ...

  5. BZOJ 2460 [BeiJing2011]元素 ——线性基

    [题目分析] 线性基,由于最多有63个,只需要排序之后,动态的去维护线性基即可. [代码] #include <cstdio> #include <cstring> #incl ...

  6. Subsonic的使用之基本语法、操作(2)

    查询 SubSonic2.1版本 – 例出3种查询. Product product = new Select().From<Product>() .Where(Product.Produ ...

  7. 【转】前端工程筹建NodeJs+gulp+bower

    转自:http://www.myexception.cn/javascript/1781968.html npm nodejs 安装过程中会自动安装npm,nodejs安装程序会在环境变量中添加两个变 ...

  8. linux系统ftp命令

    先来一段简单的ftp 下载脚本 ftp -i -n<<EOF open 14.2.33.211 user etl etl cd /etlfile/ftpfile lcd /etlfile/ ...

  9. ios 实现自定义状态栏StatusBar 和 导航栏navigationBar 的状态和颜色

    很多app中可以看到不同与导航栏的状态栏的颜色,他妈的真绕嘴. 一.更改状态栏颜色 (StatusBar) 就是比如导航栏是红色的状态栏是绿色的. 要实现这样的效果其实很简单,就是添加一个背景view ...

  10. 李洪强iOS经典面试题141-报错警告调试

    李洪强iOS经典面试题141-报错警告调试   报错警告调试 你在实际开发中,有哪些手机架构与性能调试经验 刚接手公司的旧项目时,模块特别多,而且几乎所有的代码都写在控制器里面,比如UI控件代码.网络 ...