Local 一个函数定义了一个 local 作用域; PyFrameObject 中的 f_local 属性 Global 一个 module 定义了一个 global 作用域; PyFrameObject 中的 f_global 属性. BuiltIn open, dir 的作用域等等, python 最顶层的作用域 Enclosing 例子, b = 2 def funcO(): b = 3 def funcI(): print(b) return funcI f = funcO() f()…
TLS 先说TLS( Thread Local Storage),wiki上是这么解释的: Thread-local storage (TLS) is a computer programming method that uses static or global memory local to a thread. 线程本地存储(TLS)是一种电脑编程技术, 它用静态或者全局的存储器来保存线程本地的变量(意译). 其目的是为了实现变量隔离,即“同一个”全局变量,对于不同的线程,其值可以不同(类似…
常常我们须要将大表依据分区键进行分区,当建立索引的时候.我们究竟使用local 还是global 索引呢 先看看两种索引的特点: 本地索引特点: 1. 本地索引一定是分区索引.分区键等同于表的分区键.分区数等同于表的分区说.一句话.本地索引的分区机制和表的分区机制一样. 2. 假设本地索引的索引列以分区键开头,则称为前缀局部索引. 3. 假设本地索引的列不是以分区键开头.或者不包括分区键列,则称为非前缀索引. 4. 前缀和非前缀索引都能够支持索引分区消除,前提是查询的条件中包括索引分区键. 5.…
Python 变量作用域的规则是 LEGB LEGB含义解释:L —— Local(function):函数内的名字空间E —— Enclosing function locals:外部嵌套函数的名字空间(例如closure)G —— Global(module):函数定义所在模块(文件)的名字空间B —— Builtin(Python):Python内置模块的名字空间 一.Builtin 该部分其实主要是 Python 自带的 内置命名空间,主要是 内置函数,异常类 等.可以通过 dir(__…
global和local变量 虽然简单,但是还是记录一下,主要是转载 转载自:http://blog.sina.com.cn/s/blog_436992740102ux8z.html   先看一段代码:   可见 old_price 是个全局变量, final_price 是局部变量   运行结果是:   局部变量拿到外面来如果没有定义的话就不能用的 那全局变量在 def 函数里 可以用吗?   运行结果:   可见, def 定义的函数里可以打印 全局变量   如果想要在 def 定义的函数里…
知识点: global将一个变量变为全局变量 nonlocal改变最近的变量,又不是全局作用. 1.global 在python中,当引用一个变量的时候,对这个变量的搜索按找本地作用域(Local).嵌套作用域(Encolosing function locals).全局作用域(Global).内置作用域(builtins模块)的顺序来进行的,即所谓的LEGB规则. m = 1 #全局 def fun1(): m = 2 #嵌套 def fun2(): m = 3 #本地 fun2() fun1…
当你在函数定义内声明变量的时候,它们与函数外具有相同名称的其他变量没有任何关系,即变量名称对于函数来说是 局部 的.这称为变量的 作用域 .所有变量的作用域是它们被定义的块,从它们的名称被定义的那点开始. 使用局部变量 例7.3 使用局部变量 #!/usr/bin/Python# Filename: func_local.py def func(x):    print 'x is', x    x = 2    print 'Changed local x to', x x = 50func(…
当你在函数定义声明变量的时候,它们与函数外具有相同名称的其它变量没有任何关系,即变量名称对于函数来说是 局部  的.这称为变量的 作用域 .所有变量的作用域是它们被定义的块,从它们的名称被定义的那点开始. 使用局部变量 例子:func_local.py #!/usr/bin/python #encoding:utf-8   def func(x): print 'x is', x x=2 print 'Changed local x to', x   x=50 func(x) print 'x…
问题发现 xxx = 23 def PrintFileName(strFileName): if xxx == 23: print strFileName xxx = 24 PrintFileName("file") 报错 Traceback (most recent call last): File "C:/Users/Desktop/del.py", line 7, in <module> PrintFileName("file"…
概念 有个概念叫做线程局部变量.一般我们对多线程中的全局变量都会加锁处理,这样的变量是共享变量,每一个线程都能够读写变量,为了保持同步我们会做枷锁处理.可是有些变量初始化以后.我们仅仅想让他们在每一个线程中一直存在.相当于一个线程内的共享变量,线程之间又是隔离的.python threading模块中就提供了这么一个类,叫做local. 多线程中共享变量和局部变量的差别我画两个小图.简单描写叙述下(作图能力一般.请见谅,概念性的东西大家能够google下,非常多好文章) 全局变量 线程局部变量…
每个函数都有着自已的命名空间,叫做局部名字空间,它记录了函数的变量,包括函数的参数和局部定义的变量.每个模块拥有它自已的命名空间,叫做全局命名空间,它记录了模块的变量,包括函数.类.其它导入的模块.模块级的变量和常量.还有就是内置命名空间,任何模块均可访问它,它存放着内置的函数和异常. 按照如下顺序: 1.局部命名空间 - 特指当前函数或类的方法.如果函数定义了一个局部变量,Python将使用这个变量,然后停止搜索. 2.全局命名空间 - 特指当前的模块.如果模块定义了一个变量,函数或类,Pyt…
1.关键字 global : 可以修改全局变量 可以在局部作用域声明一个全局变量,剪切 : 此时局部作用域没有该变量,全局作用域中有 name = 1 def func(): global name name += 1 print(globals()) func() print(name) print(globals()) nonlocal : 不能操作全局变量 可以对父级作用域的变量进行修改,并且在当前作用域创建(复制)一分此变量 # 这是复制 # def func(): # count =…
函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问. 函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问. 下面的例子测试了带有局部和全局作用域的变量: 在上例中,有两个变量 $x 和 $y,以及一个函数 myTest().$x 是全局变量,因为它是在函数之外声明的,而 $y 是局部变量,因为它是在函数内声明的. 如果我们在 myTest() 函数内部输出两个变量的值,$y 会输出在本地声明的值,但是无法 $x 的值,因为它在函数之外创建. 然后,如果在 myT…
近来一直都在学习python语言,偶然在伯乐在线看到2017年京东C/C++的面试题.就打算用python+ST3 IDE顺便敲下面试题代码. 原题 C语言: #include <stdio.h> ; int fib(int n){ cnt++; ) ; ) ; else )+fib(n-); } void main() { fib(); printf("%d",cnt);//问题:cnt等于多少? } 原题 python语言: cnt = 0 def fib(n): cn…
[ ] Select all packages by default *** General build options ***   [ ] Show packages that require graphics support (local or remote) [*] Compile with support for patented functionality   [ ] Compile with full language support    [ ] Attempt to link h…
由于GIL的原因,笔者在日常开发中几乎没有用到python的多线程.如果需要并发,一般使用多进程,对于IO Bound这种情况,使用协程也是不错的注意.但是在python很多的网络库中,都支持多线程,基本上都会使用到threading.local.在python中threading.local用来表示线程相关的数据,线程相关指的是这个属性再各个线程中是独立的 互不影响,先来看一个最简答的例子:   class Widgt(object): pass import threading def te…
Python网络爬虫与信息提取 目标:掌握定向网络数据爬取和网页解析的基本能力. the website is the API 课程分为以下部分: 1.requsets库(自动爬取HTML页面.自动网络请求提交) 2.robots.txt规则(网络爬虫排除标准)(合理合法的使用爬虫) 3.beautiful soup库(解析HTML页面)(提取相关项目) 4.projects项目(实战项目A/B) 5.re正则表达式库(正则表达式详解.提取页面关键信息) 6.专业网络爬虫框架scrapy*(网络…
 1.local一般用于局部变量声明,多在在函数内部使用.实例如下:      echo_start() { local STR="$1" echo "...... ${STR} ......starting at $(date)" } 2.Shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到shell结束或被显示删除的地方为止. 3.export 将自定义变量设定为系统环境变量(仅限于该次登陆操作,当前shell中有效)    语法:expo…
Django路由规则 1.基于正则的URL 在templates目录下创建index.html.detail.html文件 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> {% for k,item in user_dict…
文章来源: http://blog.csdn.net/varding/article/details/12675971 讲述了golang中的条件编译,摘要如下: 第一种条件编译的方法:编译标签 编译标签添加的规则(附上原文): 1. a build tag is evaluated as the OR of space-separated options2. each option evaluates as the AND of its comma-separated terms3. each…
在Python中,比较运用符<.>.<=.>=.== .!=可以连用,但语法规则和其它编程语言不一样 以 == 为例,具体语法规则是: a == b == c == d 等价于 a == b and b == c and c == d a = '赵敏' b = '张无忌' c = '张无忌' d = '赵敏' print(a != b == c != d) 输出结果是:…
locale 模块提供了 C 本地化( localization )函数的接口, 如 Example 8-1 所示. 同时提供相关函数, 实现基于当前 locale 设置的数字, 字符串转换. (而 int , float , 以及 string 模块中的相关转换函数不受 locale 设置的影 响.) #! /usr/bin/env python # encoding=utf8 import locale print("locale", "=>", loca…
引子: >>> print '' or 5 or 05>>> print 5 and 44>>> print '' or 5 or 0 and 45 出现以上情况的原因是什么呢? bool('') == False bool(0) == False所有变量的位操作都是通过强制转换成bool实现的,并且表达式的值是从左到右第一个能够确定表达式的值的变量.例如 (‘’ or 5 or 0)==(False or True or False),当遇到第一个T…
一.纯 and 和 or 语句 1. 在纯and语句中,如果每一个表达式都不是假的话,那么返回最后一个,因为需要一直匹配直到最后一个.如果有一个是假,那么返回假2. 在纯or语句中,只要有一个表达式不是假的话,那么就返回这个表达式的值.只有所有都是假,才返回假3. 在or和and语句比较难表达,总而言之,碰到and就往后匹配,碰到or如果or左边的为真,那么就返回or左边的那个值,如果or左边为假,继续匹配or右边的参数. (False or 1) 输出1 (1 or False) 输出1 (T…
import time import threading try: # 线程和协程都可处理 import greenlet get_ident = greenlet.getcurrent except Exception as e: get_ident = threading.get_ident class Local(object): """ 通过进程号/协程号的唯一标识,给每一个进程/协程开辟自己个空间,实现数据隔离 """ DIC = {}…
>>> dict({1:2},2=3)SyntaxError: keyword can't be an expression>>> dict({1:2},**{2:3})Traceback (most recent call last): File "<pyshell#1>", line 1, in <module> dict({1:2},**{2:3})TypeError: keyword arguments must be…
报错详情 安装 xadmin 组件的时候报错 不论是命令行还是 pycharm 方式都不行 分析报错 按照报错提示是说 README.rst 文件的编码问题导致. 解决报错 通过 github 下载源码 zip 包 https://github.com/sshwsfc/xadmin 自己手动将 包里面的  README.rst 文件自行替换掉 用 txt 文本文件重命名即可 然后手动通过 本地包 安装 在安装的时候有个 兼容性需要解决. 但是 xadmin 好歹是安装上了 当前的 django…
list_one=[3,6,2,17,7,33,11,7] list_two=[1,2,3,7,4,2,17,33,11] list_new=list_one+list_two list=[] i=0 for x in list_new : if x not in list : list.append(x) list.sort() print list…
写在前面 本篇文章是<The Python Tutorial>(3.6.1),第九章,类的译文. 9. Classes 与其他编程语言相比,Python的类机制定义类时,最小化了新的语法和语义的引入.Python类机制是C++和Modula-3的混合体.Python类支持所有面向对象编程的特性: 类继承机制允许多继承,子类可以覆盖其父类们的任何方法,方法可以使用相同的名字调用父类中的方法.对象可以包含任意数量和类型的数据. 跟模块相似,Python类也具有Python的动态性质: 类在运行时被…