Python 中一个逗号引发的悲剧】的更多相关文章

遇到一个 Python 字符串的坑,记录一下.看看下面这些代码 >>> a = [ ... 'foo' ... 'bar', ... 'tree' ... ] >>> >>> b = 'foo' 'bar' >>> >>> print a ['foobar', 'tree'] >>> print b foobar >>> 注意列表 a 的第1个元素后面漏掉了一个 , 这很容易看走眼…
查找所有已经分配部门的员工的last_name和first_name以及dept_noCREATE TABLE `dept_emp` (`emp_no` int(11) NOT NULL,`dept_no` char(4) NOT NULL,`from_date` date NOT NULL,`to_date` date NOT NULL,PRIMARY KEY (`emp_no`,`dept_no`));CREATE TABLE `employees` (`emp_no` int(11) NO…
 python中一个简单的webserver 2013-02-24 15:37:49 分类: Python/Ruby 支持多线程的webserver   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #!/usr/bin/python from SocketServer import ThreadingMixIn from BaseHTTPServer import HTTPServer,BaseHTTPRequestHandler…
PHP 中一个 False 引发的问题,差点让公司损失一百万 一.场景描述 上周我一个在金融公司的同学,他在线上写一个 Bug,差点造成公司损失百万.幸好他及时发现了这个问题并修复了.这是一个由 PHP 中的 empty 引发的问题.他使用 empty 函数判断值为 False 的参数.按照他的正常逻辑理解,下面这段代码会输出 Yes.但是,结果却是相反的. $arr['is_default'] = false; if (!empty($arr['is_default'])) { echo "Y…
不注意点了个逗号引发了类型改变 [shangbl@newsvn ~]$ cat test.py class AB1: a="a" class AB12: a="a", print(type(AB1.a)) print(type(AB12.a)) [shangbl@newsvn ~]$ python test.py <type 'str'> <type 'tuple'>…
最近研究python  遇到个逗号的问题 一直没弄明白 今天总算搞清楚了 1.逗号在参数传递中的使用: 这种情况不多说  没有什么不解的地方 就是形参或者实参传递的时候参数之间的逗号 例如def  abc(a,b)或者abc(1,2) 2.逗号在类型转化中的使用 主要是元组的转换 例如: >>> a=11>>> b=(a)>>> b11>>> b=(a,)>>> b(11,)>>> b=(a,22)…
哪里出问题了 python 中,使用 global 会将全局变量设为本函数可用.同时,在函数内部访问变量会先本地再全局. 在嵌套函数中,使用 global 会产生不合常理的行为. 上代码: In [96]: def x(): b = 12 def y(): global a,b a = 1 b = 2 y() print "b =",b ....: In [97]: a = 111 In [98]: del b In [99]: x() b = 12 In [100]: a Out[1…
HelloWorld  文件名称  Hello是类 from HelloWorld import Hello >>> h = Hello() >>> h.hello() Hello, world  # 输出结果 HelloWorld.py文件内容 class Hello(object): def hello(self, name='world'): print('Hellp, %s' %name) 在同一个文件下 调用函数: A.py文件 def add(x, y):…
今天发现了一个汉字占了3个字节,一开始以为是两个呢,字符串切片时总出现乱码,后来才发现一个中文占3个字节.这才解决了乱码问题 原来  1. utf-8 编码中,一个汉字占三个字节.英文字母是一个占用一个字节. 参考链接:https://blog.csdn.net/cadi2011/article/details/82048702 我发现python里面,汉子的长度,一个是占3个 1.难道是因为 utf-8的话一个汉子是占用了3个字节 2.反正今天顺着一个bug,想看看字符串的长度,结果一串英文,…
为了调试一个功能,在一个内核模块中,增加了一个全局变量,用来统计自有skb池的申请情况. 因为是临时增加,所以没有考虑性能,一开始只是一个fail的统计,数量不多,也不太考虑是否有计数丢失的情况,毕竟那个卖火车票的例子已经让很多人知道了并发导致的计数丢失. 因为只是一个简单统计,这样做无可厚非. 后来有人维护的时候,增加了一个success的统计,结果发现增加该变量前后cpu占用增加了一个点.为了排除是伪共享的行为,我将两个变量中间增加了一些reserve的空间,结果还是如此.去掉success…
今年江西省报名人数一下子增起来了 隔壁中学来了80+人(虽然都是来给我们垫底的...临时被老师抓来上战场 总之我们赛区参赛人数总算多起来了(起码没再减50%...连续4年减50%真不是随便说说的... 我们三个应该可以占掉前三,今年是我们唯一一次能进入省队的机会,也可能是我们最后一次团战(Ln,Cr高三退役了QAQ 拿到试卷的时候内心是极其兴奋的(这TM什么水题),最后一题图论SPFA秒过,今年越来越水了 然后回到家...突然发现...读程序写结果,诶,我好像少写了一个,逗号...(excuse…
动机 简介 用法 基本用法 何时停止 尝试间的等待 何时retry 其它 热度分析 源码分析 个人评分 动机 很多时候,我们都喜欢为代码加入retry功能.比如oauth验证,有时候网络不太灵,我们希望多试几次. 这些retry应用的场景看起来不同,其实又很类似.都是判断代码是否正常运行,如果不是则重新开始. 那么,有没有一种通用的办法来实现呢? 简介 Tenacity1是一个通用的retry库,简化为任何任务加入重试的功能. 它还包含如下特性: 通用的装饰器API 可以设定重试停止的条件(比如…
直接上代码 class Company: def __init__(self, name, staffs=[]): self.name = name self.staffs = staffs def add(self, staff_name): self.staffs.append(staff_name) def remove(self, staff_name): self.staffs.remove(staff_name) if __name__ == "__main__": com…
进程的创建和结束: multiprocess模块: multiprocess不是一个模块而是python中一个操作.管理进程的包 分为四个部分:创建进程部分,进程同步部分,进程池部分,进程之间数据共享. Process([group [, target [, name [, args [, kwargs]]]]]),由该类实例化得到的对象,表示一个子进程中的任务(尚未启动) 强调: 1. 需要使用关键字的方式来指定参数 2. args指定的为传给target函数的位置参数,是一个元组形式,必须有…
理论知识 操作系统背景知识 顾名思义,进程即正在执行的一个过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一.操作系统的其他所有内容都是围绕进程的概念展开的. 所以想要真正了解进程,必须事先了解操作系统,点击进入     PS:即使可以利用的cpu只有一个(早期的计算机确实如此),也能保证支持(伪)并发的能力.将一个单独的cpu变成多个虚拟的cpu(多道技术:时间多路复用和空间多路复用+硬件上支持隔离),没有…
.python 中的 and 从左到右计算表达式,若所有值均为真,则返回最后一个值,若存在假,返回第一个假值: or 也是从左到有计算表达式,返回第一个为真的值: 其中数字 0 是假,其他都是真: 字符 "" 是假,其他都是真: 元组中的元素值是不允许修改的,但我们可以对元组进行连接组合 元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组 .python 中数字有以下的表示方式: 2 进制是以 0b 开头的: 例如: 0b11 则表示十进制的 3 8 进制是以 0o …
简介 有关 Python 内编写类的各种技巧和方法(构建和初始化.重载操作符.类描述.属性访问控制.自定义序列.反射机制.可调用对象.上下文管理.构建描述符对象.Pickling). 你可以把它当作一个教程,进阶,或者使用参考:我希望它能够成为一份针对 Python 方法的用户友好指南. 内容目录 介绍 构建和初始化 使操作符在自定义类内工作 神奇方法--比较 神奇方法--数字 描述你的类 属性访问控制 制作自定义序列 反射 可调用对象 上下文管理 构建描述符对象 Pickling 你的对象 总…
目录 第十五章.python中的进程操作-开启多进程 一.multprocess模块 二.multprocess.process模块 三.Process()对象方法介绍 四.Process()对象属性介绍 五.使用process模块创建进程 六.进程之间的数据隔离问题 七.守护进程 八.terminate方法 九.pid和name属性 第十五章.python中的进程操作-开启多进程 一.multprocess模块 multiprocess不是一个模块而是python中一个操作.管理进程的包. 在…
背景知识: 在Python中一个function要运行起来,它在python VM中需要三个东西. PyCodeObject,这个保存了函数的代码 PyFunctionObject,这个代表一个虚拟机中的一个函数对象 PyFrameObject,这个代表了函数运行时的调用链和堆栈 Python正是通过这三样东西模拟0x86的函数调用的 在python中 coroutine(协程)被称为的generator,这两个东西在python其实是同一个东东,之所以如此称呼是因为它有迭代器的功能,但是又可以…
英文原文:Charming Python: Functional programming in Python, Part 3,翻译:开源中国 摘要:  作者David Mertz在其文章<可爱的Python:“Python中的函数式编程”>中的第一部分和第二部分中触及了函数式编程的大量基本概念.本文中他将继续前面的讨论,解释函数式编程的其它功能,如currying和Xoltar Toolkit中的其它一些高阶函数. 表达式绑定 有一位从不满足于解决部分问题读者,名叫Richard Davies…
PYTHONPATH是Python中一个重要的环境变量,用于在导入模块的时候搜索路径.可以通过如下方式访问: >>> import sys >>> sys.path ['', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-…
https://blog.csdn.net/u014745194/article/details/70176117 Python中生成器和迭代器的区别(代码在Python3.5下测试):Num01–>迭代器定义: 对于list.string.tuple.dict等这些容器对象,使用for循环遍历是很方便的.在后台for语句对容器对象调用iter()函数.iter()是python内置函数.    iter()函数会返回一个定义了next()方法的迭代器对象,它在容器中逐个访问容器内的元素.nex…
#Python的基本语法: #1.了解缩进 #Python中没有{}来表示一个代码块,但是Python使用缩进来完成区别代码框架 #那么在Python中一个缩进一般等于4个空格,当然你也可以使用TAB键来完成缩进,但是必须保证长度一致即可 #当表达分支.循环.函数.类的时候通过使用冒号(:)来表名进行缩进   #2.了解注释 #Python中的单行注释是采用#+注释来完成的 #Python中的多行注释是'''+注释内容+'''来完成的 ''' 多行注释的例子: 这是一个最好的时代,也是一个最坏的…
线程与全局解释器锁(GIL) 一.线程概论 1.何为线程 每个进程有一个地址空间,而且默认就有一个控制线程.如果把一个进程比喻为一个车间的工作过程那么线程就是车间里的一个一个流水线. 进程只是用来把资源集中到一起(进程只是一个资源单位,或者说资源集合),而线程才是cpu上的执行单位. 多线程(即多个控制线程)的概念是,在一个进程中存在多个控制线程,多个控制线程共享该进程的地址空间(资源) 创建进程的开销要远大于线程开进程相当于建一个车间,而开线程相当于建一条流水线. 2.线程和进程的区别 1.T…
在python中,一个函数就是一个作用域 name = 'xiaoyafei' def change_name(): name = 'sthu' print('在change_name里的name:',name) change_name() # 调用函数 print("在外面的name:",name) 运行结果如下: 在change_name里的name: sthu 在外面的name: xiaoyafei 我们再试一下在嵌套函数中是如何的寻找的? age = 15 def func()…
#原创,转载请留言联系 装饰器的本质就是闭包,所以想知道装饰器是什么,首先要理解一下什么是闭包. 闭包 1. 外部函数返回内部函数的引用.2. 内部函数使用外部函数的变量或者参数. def outer(outer_num): def inner(inner_num): a = outer_num+inner_num print(a) return inner f1 = outer(1) f1(2) 输出: 3 1.outer函数返回inner函数的引用,f1=outer(1),实质就是f1=in…
一. python中常见的数据类型 1. 整数:任何时候运算都是精确的 2. 浮点数:运算的时候,可能会有四舍五入 3. 字符串:字符串是以单引号'或双引号"括起来的任意文本 1) 同类型的可以用+号 或者 , 号来进行拼接 2) 不同类型的只能用, 号拼接,不能用+号 3) 强制转换后,可以进行拼接,比如str(a) int(a)这种就是强制转换 4. 布尔值:布尔值只有True.False两种值,逻辑运算得到的结果就是布尔值 5. None值:空值是python中一个特殊的值,用None来表…
面向对象初识到进阶 # 面向对象结构: # class 类名: # def __init__(self,参数1,参数2): # self.对象的属性1 = 参数1 # self.对象的属性2 = 参数2 # # def 方法名(self):pass # # def 方法名2(self):pass # # 对象名 = 类名(1,2) #对象就是实例,代表一个具体的东西 # #类名() : 类名+括号就是实例化一个类,相当于调用了__init__方法 # #括号里传参数,参数不需要传self,其他与…
Google 以图搜图的原理,其中的获取图片 hash 值的方法就是 AHash. 每张图片都可以通过某种算法得到一个 hash 值,称为图片指纹,两张指纹相近的图片可以认为是相似图片. 以图搜图的原理就是获取你上传的图片的指纹,和图库的图片指纹对比,查找出最相似的若干张图片展示. 除了以图搜图,图片哈希还可以做什么呢?例如图片检索,重复图片剔除,图片相似度比较等等. 这种哈希算法大概有 4 种: 1,差值哈希:DHash(Difference Hash)2,均值哈希:AHash(Average…
一.模块 # 模块(module) # 模块化,模块化指将一个完整的程序分解为一个一个小的模块 # 通过将模块组合,来搭建出一个完整的程序 # 不采用模块化,统一将所有的代码编写到一个文件中 # 采用模块化,将程序分别编写到多个文件中 # 模块化的有点: # ① 方便开发 # ② 方便维护 # ③ 模块可以复用! # 在Python中一个py文件就是一个模块,要想创建模块,实际上就是创建一个python文件 # 注意:模块名要符号标识符的规范 # 在一个模块中引入外部模块 # ① import…