python杂七杂八小问题
1、win7系统下,安装完GTK+后,从命令行界面无法启动ipython,提示“failed to create process”。运行easy_install也遇到了这个问题。
原因是安装GTK+时,在c盘创建了名为Program的文件。ipython可能误把这个文件当做Program Files目录,所以导致了错误。将这个文件删去问题即可解决。
def a():
print 'yes'
s=[]
t={}
s.append(a)
t['a']=a
3、dict中的元素没有顺序,一般会按照key的首字母排列。
若子类需要init,但又要保留超类的init,那么:
class cat(object):
def __init__(self,name):
self.legs_num = 4
def walk(self):
pass class mimi(cat):
def __init__(self):
cat.__init__(self,name)
self.hair = 'white'
def smile(self):
pass
5、getattr
getattr(object,name)和object.name相似。例如
import os
getattr(os,'getcwd')() #和os.getcwd()作用相同
在类中有如下形式
class Game(object):
#······
def play(self):
next = self.start while True:
print "\n--------"
room = getattr(self, next)
next = room()
#······
6、__dict__
究竟函数的__dict__是干什么用的呢?
其实它提供给函数增加属性的功能
看一个简单的例子:
In [4]: def add(x,y):
...: return x+y
...:
显是一下这个函数的属性:
In [13]: print dir(add)
['__call__', '__class__', '__closure__', '__code__', '__defaults__', '__delattr__', '__dict__', '__doc__', '__format__', '__get__', '__getattribute__', '__globals__', '__hash__', '__init__', '__module__', '__name__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'func_closure', 'func_code', 'func_defaults', 'func_dict', 'func_doc', 'func_globals', 'func_name']
那么我们现在来给这个函数增加一个属性:
In [14]: def mul(x,y):
....: return x*y
....: In [15]: add.__dict__['mul']=mul
我们再来看一下add的属性列表
In [16]: print dir(add)
['__call__', '__class__', '__closure__', '__code__', '__defaults__', '__delattr__', '__dict__', '__doc__', '__format__', '__get__', '__getattribute__', '__globals__', '__hash__',
'__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'func_closure', 'func_code', 'func_defaults', 'func_dict', 'func_doc', 'func_globals', 'func_name', 'mul']
发现已经多了一个属性mul,而且和我们定义的函数一样是可以调用的
In [17]: add.mul(10,20)
Out[17]: 200
7、如何控制浮点数据?
比如小数点后保留两位,可写成‘%.2f’%··
8、python输出中文需要用gbk
9、判断文本文件读取结束
文本的最后一行的下一行是空白,可以用
line=f.readline()
if not line:
····
10、正则表达式上的问题
想着对一个中文txt文件进行文字替换。在进行正则表达式匹配时遇到了编码问题、多行替换问题、贪婪问题。
编码问题:对于中文,读取的文本必须和正则表达式使用相同的编码,才能顺利匹配。
多行替换问题:当compile不带DOTALL参数时,‘.’不匹配换行符。
贪婪问题:匹配非贪婪的任意字符,应写成‘.*?’,不是‘(.*)?’。
python杂七杂八小问题的更多相关文章
- 一个python爬虫小程序
起因 深夜忽然想下载一点电子书来扩充一下kindle,就想起来python学得太浅,什么“装饰器”啊.“多线程”啊都没有学到. 想到廖雪峰大神的python教程很经典.很著名.就想找找有木有pdf版的 ...
- 12岁的少年教你用Python做小游戏
首页 资讯 文章 频道 资源 小组 相亲 登录 注册 首页 最新文章 经典回顾 开发 设计 IT技术 职场 业界 极客 创业 访谈 在国外 - 导航条 - 首页 最新文章 经典回顾 开发 ...
- python 购物车小程序
python 购物车小程序 功能要求:1.启动程序后,输入用户名密码后,让用户输入工资,然后打印商品列表2.允许用户根据商品编号购买商品3.用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒4. ...
- 简述Python入门小知识
如今的Python开发工程师很受企业和朋友们的青睐,现在学习Python开发的小伙伴也很多,本篇文章就和大家探讨一下Python入门小知识都有哪些. 扣丁学堂简述Python入门小知识Python培训 ...
- 批量下载网站图片的Python实用小工具(下)
引子 在 批量下载网站图片的Python实用小工具 一文中,讲解了开发一个Python小工具来实现网站图片的并发批量拉取.不过那个工具仅限于特定网站的特定规则,本文将基于其代码实现,开发一个更加通用的 ...
- uniGUI for C++ builder之杂七杂八小知识
uniGUI for C++ builder之杂七杂八小知识 2018年09月30日 22:16:05 中国银行之路在脚下 阅读数:41 标签: uniguibuilder 更多 个人分类: C++ ...
- 30个Python物联网小实验5:光线感应灯
30个Python物联网小实验5:光线感应灯 光线传感器 光线变化执行函数 光线状态执行函数 30个Python物联网小实验5:光线感应灯 光线传感器 可以检测周围环境的亮度: 方向性较好,感知特定方 ...
- python 程序小测试
python 程序小测试 对之前写的程序做简单的小测试 ... # -*- encoding:utf-8 -*- ''' 对所写程序做简单的测试 @author: bpf ''' def GameOv ...
- Python入门小练习
Python入门小练习 001 备份文件 Python入门小练习 002 批量下载网页链接中的图片 Python入门小练习 003 利用cookielib模拟登录获取账户信息
随机推荐
- 4.3.5 使用Http:// (Https://)协议连接到ActiveMQ 2015年9月28日
用到的几点地方: 1.服务器端 ActiveMQ的文件activemq.xml中,预先要定义好有关本协议http的传输连接器格式,抓图如下: 2. 然后,开启Eclipse环境,在publish ...
- Dapper学习笔记(2)-链接引用
在研究Dapper源码时发现Dapper NET45类库中的SqlMapper.cs文件前面有个蓝色的箭头图标,发现在Dapper NET45文件夹下根本不存在SqlMapper.cs文件,其文件属性 ...
- C#版的mongodb最新的官方驱动2.4.0版本
已经升级了mongodb至最新的3.4的版本,我想想也该把驱动升到最新的了,我用的驱动还是1.7的版本呢,之前几次想升级,都是因为升级驱动需要改动的代码太大了,升级的成本很高,所以懒得动,就这么的用了 ...
- 网页for循环get测试
for(var i=0;i<10000;i++) { var request = new XMLHttpRequest(); request.open("GET"," ...
- 解决ORA-14450:试图访问已经在使用的事务处理临时表
select * from dba_objects where object_name='TEMP_MZGL_BRSFD'; select 'alter system kill session ''' ...
- Android深度探索--HAL与驱动开发----第七章读书笔记
首先创建led驱动的设备文件,可以使用cdev_init,register_chrdev_region,cdev_add等建立主设备号的设备文件.步骤如下: 1使用cdev_init初始化cdev 2 ...
- cocos2dx-3.9 集成admob
Part 1: 安装GoogleMobileAds framework (即admob) 1. 安装Cocoapods,否则解决依赖关系和配置真的会把人不累死也得烦死 sudo gem install ...
- bootstraps字体图标无法显示
使用bootstraps字体图标,必须在css的同级文件夹下,建立新的文件夹为fonts,放入一下文件. 在还是无法显示字体图标的情况下,可查看bootstraps.css中的 @font-face ...
- 基于eclipse-java的平台上搭建安卓开发环境
首先感谢好人的分享!http://www.mamicode.com/info-detail-516839.html 系统:windows 7 若想直接安装eclipse—android的,请启动如下传 ...
- UVA 12549 - 二分图匹配
题意:给定一个Y行X列的网格,网格种有重要位置和障碍物.要求用最少的机器人看守所有重要的位置,每个机器人放在一个格子里,面朝上下左右四个方向之一发出激光直到射到障碍物为止,沿途都是看守范围.机器人不会 ...