小小收获for python
包导入问题:
包之外导入:还是按照sys.path的搜索路径进行模块的导入
包内的导入:python3.0+ 完全区分绝对导入和相对导入
from . import string #在本包内按相对路径搜索string模块
import string #按sys.path的绝对路径搜索string模块,忽略包中的模块,即使包中存在该模块
python2.7 from . import string #与3.0一致,按相对路径搜索string模块
import string #若包中有string模块,优先导入该模块,否则,搜索sys.path目录下的模块
数据隐藏问题:
使用from *时,python 默认导入保存在'__all__'属性中的那些变量名;
若无'__all__'属性,则默认导入所有不是'_x'这种形式的变量名。
模块导入与运行问题:
当模块运行时,默认的__name__=='__main__'
而当模块导入时,__name__==模块名
由此可以将模块用于不同用途的代码分隔开。
try-except-else-finally:
try:
expression
except SomeException as e:
deal with the exception
产生异常时,会用异常产生的参数生成一个该异常类的实例, 即e。 若无异常,则参数都为None。
python中的异常类:
有3 个直接从BaseException 派生的异常子类:SystemExit,KeyboardInterrupt 和Exception.
其他的所有的内建异常都是Exception 的子类
上下文管理协议:
with context_expr [as var]: with_suite
python中的上下文管理对象:
file
decimal.Context
thread.LockType
threading.Lock
threading.RLock
threading.Condition
threading.Semaphore
threading.BoundedSemaphore
自定义上下文对象(contextlib 模块):
__context__() 上下文管理器调用该方法产生一个上下文对象, 有点需要注意的是上下文对象本身就可以是上下文管理器。
为管理器时,返回一个上下文对象,为上下文对象时, 返回自身(自我管理)。
__enter()__ as 后以__enter__返回值来赋值,否则,丢弃返回值
__exit()__ with 语句块执行结束,无论异常与否,都会执行该方法。
三个参数.若正常结束,三个参数全部是None.若异常,三个参数的值的分别等于调用sys.exc_info()函数返回的三个值:
类型(异常类),值(异常实例),和回溯(traceback),相应的回溯对象.
惯例是当你处理完异常时不返回任何值,或返回None,或返回其他布尔值为False 对象,这样可以使异常抛给你的用户来处理.
如果你明确的想屏蔽这个异常,返回一个布尔为True 的值.如果没有发生异常或你在处理异常后返回True,程序会继续执行with 子句后的下
一段代码.
小小收获for python的更多相关文章
- 小小聊天室 Python实现
相对于Java方式的聊天室,Python同样可以做得到.而且可以做的更加的优雅.想必少了那么多的各种流的Python Socket,你一定会喜欢的. 至于知识点相关的内容,这里就不多说了. UDP方式 ...
- python爬虫的一些小小问题、python动态正则表达式
1.首先urllib不能用了,需要引入的是urllib2,正则re. #coding=utf-8 # import urllib import urllib2 import re def getHtm ...
- 今天 小小收获, 看了 sam Xiao 的好帖子 明白了 泛型委托 的 意思。
Func<int,int,int> cAdd1 = (int x, int y) => { return x + y; }; int result= aAdd1(1,2); cons ...
- 小小见解之python循环依赖
a.py from b import b print '---------this is module a.py----------' def a(): print "hello, a&qu ...
- 魔咒,90%未学满三个月Python编程的朋友都会出错!
Python语言虽然优美,简洁和强大,但是也有很多坑,一不小心就会掉进去.我学Python的时候也遇到过,今天总结一下,希望对大家能有收获! Python的默认参数就被创建 一次,而不是每次调用函数的 ...
- 【python】配置文件
来源:http://developer.51cto.com/art/201003/189885.htm python 读写配置文件在实际应用中具有十分强大的功能,在实际的操作中也有相当简捷的操作方案, ...
- python的ConfigParser读取设置配置文件
python 读写配置文件在实际应用中具有十分强大的功能,在实际的操作中也有相当简捷的操作方案,以下的文章就是对python 读写配置文件的具体方案的介绍,望你浏览完下面的文章会有所收获. pytho ...
- SQLite 版本引发的 Python 程序调用问题
问题 在跑 OpenStack functional 功能测试的时候有两个用例过不去. nova.tests.functional.db.test_resource_provider.Resource ...
- python中*args和**kwargs学习
*args 和 **kwargs 经常看到,但是一脸懵逼 ,今天终于有收获了 """ python 函数的入参经常能看到这样一种情况 *args 或者是 **kwargs ...
随机推荐
- 初识Linux-2
1,rm leo/a*可以将leo文件夹中带有a的所有的文件都删除,rm-r leo/a*可以将文件夹中含有a的文件和文件夹都全部删除 2,ls -l -d dc/*2表示遇到含有2的目录时不进入目录 ...
- 访问者模式(Visitor Pattern)
定义:封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作. Visitor 抽象访问者角色:为该对象结构中具体元素角色声明一个访问操作接口.该操作接口 ...
- 开始使用Pyhton
安装 第一个Python程序 首先我们打开python 交互式解释器, 执行如下命令: Python 3.5.1+ (default, Mar 30 2016, 22:46:26) [GCC 5.3. ...
- 3、C#入门第3课
1.c#中一个解决方案 里面两个程序 怎么一个启动另一个? 我一个解决方案下,有两个工程,我想让A工程在适当时候,启动B工程,比如A中有个按钮,一点,B工程就启动了. System.Diagnosti ...
- vue 2.0版本----》常用代码说明
------------------------------------------代码不显示-------------------------------------------- [v-cloak ...
- 【新手】python爬虫遍历贴吧用户
想法是遍历学校贴吧的用户,获取用户的数据用来分析,因为是初学python,就一点一点的写,变量命名也不规范,见谅 系统:windows 版本:python 3.5 #获取河北大学工商学院吧1000页以 ...
- Visual Studio+TFS--强大的项目管理工具
一.前言 微软的Visual Studio非常强大,可以无缝结合Git或自家的TFS(Team Foundation Server),进行项目管理非常方便,从需求分析.开发.测试.维护,几乎可以贯穿软 ...
- AI(二):人脸识别
微软提供的人脸识别服务可检测图片中一个或者多个人脸,并为人脸标记出边框,同时还可获得基于机器学习技术做出的面部特征预测.可支持的人脸功能有:年龄.性别.头部姿态.微笑检测.胡须检测以及27个面部重要特 ...
- Hessian最佳实践
前言:本文主要介绍‘独立的Hessian技术’与‘结合Spring技术’的两种Hessian接口开发模式及代码示例. 一.独立的Hessian技术开发步骤 Hessian-Java服务器端必须具备以下 ...
- c#读取INI文件
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...