随笔分类 -  Python

python 零散记录(三) 格式化字符串 字符串相关方法
摘要:使用 % 符号格式化字符串:"""常用转换说明符:"""#%s: 按照str()方式转换#%r: 按照repr()方式转换#%d: 十进制整数#%f: 十进制浮点数#%x/%X:小写/大写无符号十六进制数#%e/%E:小写/大写科学计数法"""宽度与精度""""'%10.2f'" % 3.1415 #这里的10表示转换后字符宽度,2表示精确到小数点2位#宽度与精度也可以用*代替,然后在tuple(元组)中读出:"'%*.* 阅读全文

posted @ 2013-08-23 15:48 李皮筋 阅读(269) 评论(0) 推荐(0)

python 零散记录(二) 序列的相关操作 相加 相乘 改变 复制
摘要:序列相加:[1,2] + [3,4] == [1,2,3,4]#字符串也是序列的一种'hello' + 'world' == 'hello world'#但是序列相加只限于相同类型的序列间相加。所以[1] + 'haha' #这样是会报错的序列相乘:#数字乘以序列会产生新的序列:'python' * 3 == 'pythonpythonpython'[1,2] * 3 == [1,2,1,2,1,2]#创建一个占用n个元素空间的列表:mylist = [None] * 4#这样mylist就等于[N 阅读全文

posted @ 2013-08-20 21:25 李皮筋 阅读(559) 评论(0) 推荐(0)

python 零散记录(一) input与raw_input 数学相关函数 转换字符串的方法
摘要:input()与raw_input():两者都是接受命令行输入,但区别在于,raw_input()接受原始数据(raw data)。#使用input()来提示输入名字input("enter your name:")#这样在实际输入名字的时候,写 myname 是会报错的,抛出NamError的异常#必须要这样写 'myname',可这显然是不人道的。#使用raw_input()raw_input("enter your name:")#这样就正常了几个看到的数学相关函数:abs(): #取绝对值运算round(): #四舍五入运算mat 阅读全文

posted @ 2013-08-20 20:08 李皮筋 阅读(498) 评论(0) 推荐(0)

devi into python 笔记(七)locals与globals 字典格式化字符串 字符集
摘要:locals()与globals(); """ locals:局部命名空间 globals:全局命名空间 都是以dictionary的形式保存的,变量名是键,变量值是值 """ def func(): x = 1 print locals() #locals返回的只是一个拷贝,在这基础上做改动是无效的 locals()['x'] = 2 print x func() z = 1 #但是globals与locals完全相反,在globals的基础上做改动会影响实际的值 ... 阅读全文

posted @ 2013-07-05 23:30 李皮筋 阅读(290) 评论(0) 推荐(0)

devi into python 笔记(六)正则表达式 原始字符串
摘要:字符串函数replace: #string.replace: #字符串的replace方法:替换子串,不改变原来的字符串 s = "broad road" #打印出来会发现不单单是road被替换了,broad也变了 #这是因为broad也包含road,replace方法 print s.replace('road', 'rd.')原始字符串 r'string': #原始字符串:只要在普通字符串前加上 r 就可以 #这样做是表明这个字符串中的所有字符都不转义,避免反斜线灾难 print r'this is a \t\n 阅读全文

posted @ 2013-07-04 15:44 李皮筋 阅读(560) 评论(0) 推荐(0)

devi into python 笔记(五)异常 文件操作 sys os glob模块简单实用
摘要:异常: Java异常: try catch块处理异常,throw引发异常。 Python异常: try except块处理异常,raise引发异常。 异常如果不主动处理,则会交给Python中的缺省处理,终止程序。所以应该在可预见的地方添加try except块,比如打开文件时没有文件,链接数据库时不可链接等等。 #使用多个except处理不同的异常 #缺省的except要在末尾 #else表示如果没有任何异常发生则执行else的语句 try: f = open("xxx", "r") except KeyError: ... 阅读全文

posted @ 2013-07-04 15:16 李皮筋 阅读(568) 评论(0) 推荐(0)

devi into python 笔记(四)python的类
摘要:import 与 from ... import ...:#types只是一个包,FunctionType只是这个包里的一个函数。这里用它来演示import types#如果要用FunctionType(),则要这样print types.FunctionType#如果不想每次都写types前缀,就可以用from importfrom types import FunctionTypeprint FunctionType#高端一点的说法是,from import会把FunctionType添加到当前的 命名空间 中#这样就可以直接使用了,不然的话就要每次都指定来源#不提倡使用from imp. 阅读全文

posted @ 2013-07-01 22:19 李皮筋 阅读(395) 评论(0) 推荐(0)

devi into python 笔记(三)callable getattr lambda表达式
摘要:常用的函数:callable():如果所给参数是可调用的,返回True 不可调用返回Fasle。这里指的是否能调用说的是方法、类方法等有doc string的东西,一个单纯的字符串等就不算了。import string#之前用过的join方法#punctuation给出了可用的标点符号,他实际上就是一个字符串,里面给出了有效可用的标点符号。print string.punctuationprint callable(string.join), callable(string.punctuation)getattr():比较另类也很强大的一个函数,返回的是一个函数的引用l = [1, 2, 3] 阅读全文

posted @ 2013-06-30 21:59 李皮筋 阅读(979) 评论(0) 推荐(0)

devi into python 笔记(二)元组 变量声明 和列表解析
摘要:元组tuple: 类似list,只是tuple是不可变的list。类似java的String都是不可改变的。注意:tuple没有方法(有待考证),不可以像list那样那个list.pop 或者list.append()等操作。但是可以用 in 来判断一个元素是否在tuple中:mytuple = ('a', 'b', 'c') print 'a' in mytuple, 'd' in mytupletuple与list相比较: tuple更安全,提供了“写保护”,当想要一组只用来遍历的数据时推荐使用tuple。 t 阅读全文

posted @ 2013-06-30 20:49 李皮筋 阅读(460) 评论(0) 推荐(0)

devi into python 笔记(一)字典 列表的简单操作
摘要:模块:python中模块是很重要的概念,在模块中加入if __name__ == "__main__": pass会使模块应用起来更加灵活,避免出错。==================================字典dictionary:python 字典中元素是无序的,并且对于键来说是大小写敏感的。向字典添加元素:直接写dic['new'] = 'new'del dic['new'] 删除一个元素dic.clear() 清空dic,返回一个空dic,打印出的是:{}=========================== 阅读全文

posted @ 2013-06-27 17:01 李皮筋 阅读(242) 评论(0) 推荐(0)

python DB-API数据库常用对象及方法,postgresql为例
摘要:之前做过python的web框架flask,数据库用的是sqlite3,也只是会用。后来又查了一些资料,这里整理了一下。这是python的官方数据库API介绍:http://www.python.org/dev/peps/pep-0249/ 这里就简单说说常用的对象与方法:1.connection 连接对象: cursor():返回游标对象 commit():对除了查询(select)操作,也就是insert、update、delete操作时要用到,下面会有例子。 close():关闭连接对象2.cursor 游标对象: execute(sql):执行具体sql语句 fetchall... 阅读全文

posted @ 2013-05-13 00:30 李皮筋 阅读(537) 评论(0) 推荐(0)

CGI与WSGI
摘要:之前做过php,现在在学python,涉及到wsgi,被搞得有点蒙,看了些资料,这里简单总结一下,理解上有偏差的地方希望有大牛帮忙。其实还是有点模模糊糊的,不太理解… 任重而道远CGI:使用户在浏览器上请求服务器上的应用程序。或者说,想要执行什么动态页面的功能,就要经过 浏览器->服务器->CGI->应用程序->返回给CGI->返回给服务器->返回给浏览器。WSGI:简单的说,WSGI是为了python而存在的CGI程序。由于之前的CGI程序和编写WEB服务所用的语言往往是不同的(CGI用C,WEB服务用PHP等),WSGI的其中一个目的就是让用户可以用统一 阅读全文

posted @ 2013-05-08 14:02 李皮筋 阅读(350) 评论(0) 推荐(0)

导航