自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

大坡3D软件开发

自主操作系统和CPU--用软件来改变世界

原创 为什么要使用Python?

有一天,我突然发现有一个员工,他的代码质量又好,功能完成又快,只要把他的模块跟别人联调,不仅代码不出问题,还帮别人找出很多问题。我对这个现象比较好奇,连续观察几周之后,在一次技术交谈会上,我让他说说倒底有什么神奇武功绝招可以分享出来的。他说没有什么别的可以藏起来的绝招,只是使用了Python这个工具,这个工具绝对比《葵花宝典》实用多了,因为它不用自宫,即可成功。我仔细地整理一下他分享的技术观点,写

2014-11-27 17:56:47 10136 19

原创 Python标准库:内置函数exec(object[, globals[, locals]])

本函数是执行一段语句或函数。参数object是一个字符串的语句或者一个编译过的语句的对象名称。参数globals是全局命名空间,用来指定执行语句时可以访问的全局命名空间;参数locals是局部命名空间,用来指定执行语句时可以访问的局部作用域的命名空间。要注意本函数不会返回任何值,不管函数或语句有任何的返回值语句,比return或yield语句。如果参数globals和locals忽略,就会使用调用

2014-11-26 20:13:09 6775 2

原创 Python标准库:内置函数eval(expression, globals=None, locals=None)

本函数是用来动态地执行一个表达式的字符串,或者compile函数编译出来的代码对象。参数expression是一个表达式字符串,或者表示编译出来代码对象的名称;参数globals是全局命名空间,可以指定执行表达式时的全局作用域的范围,比如指定某些模块可以使用。如果本参数缺省,就使用当前调用这个函数的当前全局命名空间;参数locals是局部作用域命名空间,是用来指定执行表达式时访问的局部命名空间。如

2014-11-24 20:56:11 18756

原创 Python标准库:内置函数enumerate(iterable, start=0)

本函数是把可迭代对象转换为枚举对象。iterable是可迭代参数,比如像列表、数组、字典等对象;start是枚举的起始值,默认是从0开始。这个函数实现原理是这样,从迭代对象的方法__next__()取得一项值,然后就对参数start开始计数,每取一项增加1,生成一个元组返回。本函数实现原理,大体上可以用下面的代码来表示:def enumerate(sequence, start=0):    n 

2014-11-23 10:33:39 5374 1

原创 Python标准库:内置函数divmod(a, b)

本函数是实现a除以b,然后返回商与余数的元组。如果两个参数a,b都是整数,那么会采用整数除法,结果相当于(a//b, a % b)。如果a或b是浮点数,相当于(math.floor(a/b), a%b)。例子:#divmod()print('divmod(2, 4):', divmod(2, 4))print('divmod(28, 4):', divmod(28, 4))print('d

2014-11-22 20:00:46 18762

原创 Python标准库:内置函数dir([object])

本函数是用来显示当前作用域里的属性列表,或者参数对象object的属性列表。当没有参数对象时,显示当前作用域所在的属性列表;如果有参数对象,就会显示这个对象拥有的属性列表。本函数在显示对象的属性列表时,查看对象是否存在__dir__()函数,如果存在,就调用这个函数,并显示这个函数返回的属性列表。当然用户也可以使用__getattr__()或__getattribute__()函数来定制属性的显示

2014-11-22 10:28:17 3096

原创 Python标准库:内置函数dict(iterable, **kwarg)

本函数是从可迭代对象来创建新字典。比如一个元组组成的列表,或者一个字典对象。例子:#dict()#以键对方式构造字典d1 = dict(one = 1, two = 2, a = 3)print(d1)#以映射函数方式来构造字典d2 = dict(zip(['one', 'two', 'three'], [1, 2, 3]))print(d2)#可迭代对象方式来构造字典d3 =

2014-11-20 21:05:02 2426

原创 Python标准库:内置函数dict(mapping, **kwarg)

本函数是从一个映射函数对象构造一个新字典。与dict(**kwarg)函数不一样的地方是参数输入是一个映射类型的函数对象,比如zip函数、map函数。例子:#dict()#以键对方式构造字典d1 = dict(one = 1, two = 2, a = 3)print(d1)#以映射函数方式来构造字典d2 = dict(zip(['one', 'two', 'three'], [1,

2014-11-19 20:19:15 3623

原创 Python标准库:内置函数dict(**kwarg)

本函数是从一个字典参数构造一个新字典。参数kwarg是键值对的字典参数,以两个*开头的参数,就会收集成字典形式。例子:#dict()#以键对方式构造字典d1 = dict(one = 1, two = 2, a = 3)print(d1)输出结果如下:{'two': 2, 'a': 3, 'one': 1}蔡军生  QQ: 9073204  深圳

2014-11-18 22:18:54 2284

原创 boost 1.57在VC2012里编译出错以及解决

最新发布的boost版本是在2014年11月3日发布,由于项目里使用,就立即更新为最新版本的库,这样也可以让可能出现的BUG减到最少。不过在更新这库之后,发现原来可以编译通过的项目,而现在不能通过了,提示错误如下:transform_width.hpp(156): error C2589: '(' : illegal token on right side of '::'通过仔细地查看transf

2014-11-17 12:36:54 3678

原创 Python标准库:内置函数delattr(object, name)

本函数是用来删除对象的属性,比如在函数setattr()里添加的属性,就可以利用这个函数来删除。参数object是一个对象,参数name是一个字符串,但这个字符串必须是对象的属性。比如delattr(x, ‘test’) 等价于 del x.test。例子:#delattr()class test: passa = test()setattr(a, 'foo', 12)print('

2014-11-15 20:10:06 2247

原创 Python标准库:内置函数complex([real[, imag]])

本函数可以使用参数real + imag*j方式创建一个复数。也可以转换一个字符串的数字为复数;或者转换一个数字为复数。如果第一个参数是字符串,第二个参数不用填写,会解释这个字符串且返回复数;不过,第二个参数不能输入字符串方式,否则会出错。real和imag参数可以输入数字,如果imag参数没有输入,默认它就是零值,这个函数就相当于int()或float()的功能。如果real和imag参数都输入

2014-11-14 20:25:48 7060

原创 Python标准库:内置函数compile(source, filename, mode, flags=0, dont_inherit=False, optimize=-1)

这个函数用来编译一段字符串的源码,结果可以生成字节码或者AST(抽像语法树),字节码可以使用函数exec()来执行,而AST可以使用eval()来继续编译。参数source是一串字符串的源码,或者是AST对象数组。参数filename是读取字符串的文件对象,如果不是从文件里读取源码来编译,那么这里可以放一些用来标识这些代码的字符串。参数mode是用来指明那种表示的源码类型;如果是exec类型,表示

2014-11-12 20:32:36 11038 2

原创 Python标准库:内置函数classmethod(function)

把类函数当作类的一个方法返回。类方法第一个参数是指明类,跟类中函数一样,第一个参数是指明类实例。类方法修饰符采用下面的格式来使用:class C:@classmethoddef f(cls, arg1, arg2, ...):...从上面格式来看,@classmethod是函数在前置的一个修饰符,可以查看语言参考手册。经过类方法修饰符的函数,可以直接通类来调用,比如C.f()方式;也可以通实例的方

2014-11-11 20:20:05 3028

原创 Python标准库:内置函数chr(i)

返回一个参数i表示的字符串。比如,chr(97)返回字符”a”。参数i的有效范围为0到1,114,111(0x10FFFF),其它范围的值会抛出异常ValueError。与之相反转换的函数是ord(),它是把一个字符串变成数值。例子:#chr()函数print('0x5a:', chr(0x5a), ' 97:', chr(97), ' 60:', chr(60))输出结果如下:0x5

2014-11-10 15:51:12 4794

原创 Python标准库:内置函数callable(object)

如果对象object参数是可以调用的对象,就返回True;否则返回False。不过要注意的是,当一个对象是可以调用的,并不表示调用该对象时执行一定成功,但不可调用的对象去调用时一定不会成功。如果类对象是一个类对象,那么这个类是否重载有__call__()方法来决定,如果重载有这个方法就判断为True。例子:#callable()函数a = 'abc'def f(a): pass

2014-11-07 16:28:01 3519

原创 Python标准库:内置函数bytes([source[, encoding[, errors]]])

返回一个新的数组对象,这个数组对象不能对数组元素进行修改。每个元素值范围: 0 。bytes函数与bytearray函数主要区别是bytes函数产生的对象的元素不能修改,而bytearray函数产生的对象的元素可以修改。因此,除了可修改的对象函数跟bytearray函数不一样之外,其它使用方法全部是相同的。最后它的参数定义方式也与bytearray函数是一样的。例子:#bytes()函数a =

2014-11-06 14:53:40 18185

原创 Python标准库:内置函数bytearray([source[, encoding[, errors]]])

返回一个新字节数组。这个数组里的元素是可变的,并且每个元素的值范围: 0 。可以过“字节与字节数组操作”章节来查看相关字节数组的内容。下面说明一下几种特别的使用方法:1. 如果source是一个字符串,那么必须给出endcoding是什么样编码的,以便转换为合适的字节保存。2. 如果source是一个整数,那么这个数组将初始化为空字节。3. 如果source是一个有缓冲区接口的对象,那么只读的接口

2014-11-05 13:06:59 12728

原创 Python标准库:内置函数bin(x)

转换一个整数x为二进制的字符串表示。如果参数x不是一个整数对象,可以通过重载__index__()函数来实现返回一个整数。例子:#bin(x)print('100:', bin(100), '0x64:', bin(64))输出结果如下:100: 0b1100100 0x64: 0b1000000蔡军生 QQ:9073204  深圳

2014-11-04 12:50:24 3775

原创 Python标准库:内置函数ascii(object)

这个函数跟repr()函数一样,返回一个可打印的对象字符串方式表示。当遇到非ASCII码时,就会输出\x,\u或\U等字符来表示。与Python 2版本里的repr()是等效的函数。例子:#ascii()函数print(ascii(10), ascii(9000000), ascii('b\31'), ascii('0x\1000'))输出结果如下:10   9000000   'b\x19'

2014-11-03 12:43:13 6513

提示
确定要删除当前文章?
取消 删除