Python一些实用小技巧

简介: Python一些实用小技巧

import模块
在Python经常使用import声明,以使用其他模块(也就是其它.py文件)中定义的对象。

1) 使用name

当我们编写Python库模块的时候,我们往往运行一些测试语句。当这个程序作为库被import的时候,我们并不需要运行这些测试语句。一种解决方法是在import之前,将模块中的测试语句注释掉。Python有一种更优美的解决方法,就是使用name

下面是一个简单的库程序TestLib.py。当直接运行TestLib.py时,name为"main"。如果被import的话,name为"TestLib"。

复制代码
def lib_func(a):
return a + 10

def lib_func_another(b):
return b + 20

if name == 'main':
test = 101
print(lib_func(test))
复制代码
我们在user.py中import上面的TestLib。

import TestLib
print(TestLib.lib_func(120))
你可以尝试不在TestLib.py中使用if name=='main', 并对比运行结果。
//代码效果参考:https://v.youku.com/v_show/id_XNjQwNjgxMDU2OA==.html

2) 更多import使用方式

import TestLib as test # 引用TestLib模块,并将它改名为t

比如:

import TestLib as t
print(t.lib_func(120))
from TestLib import lib_func # 只引用TestLib中的lib_func对象,并跳过TestLib引用字段

这样的好处是减小所引用模块的内存占用。

比如:

from TestLib import lib_func
print(lib_func(120))
from TestLib import * # 引用所有TestLib中的对象,并跳过TestLib引用字段

比如:

from TestLib import *
print(lib_func(120))

查询
1) 查询函数的参数

当我们想要知道某个函数会接收哪些参数的时候,可以使用下面方法查询。

import inspect
print(inspect.getargspec(func))

2) 查询对象的属性

除了使用dir()来查询对象的属性之外,我们可以使用下面内置(built-in)函数来确认一个对象是否具有某个属性:

hasattr(obj, attr_name) # attr_name是一个字符串

例如:

a = [1,2,3]
print(hasattr(a,'append'))

2) 查询对象所属的类和类名称

a = [1, 2, 3]
print a.class
print a.class.name

3) 查询父类

我们可以用base属性来查询某个类的父类:

cls.base

例如:

print(list.base)

使用中文(以及其它非ASCII编码)
在Python程序的第一行加入#coding=utf8,例如:

coding=utf8

print("你好吗?")
也能用以下方式:

-- coding: UTF-8 --

print("你好吗?")

//代码效果参考:https://v.youku.com/v_show/id_XNjQwNjgwOTAzMg==.html

表示2进制,8进制和16进制数字
在2.6以上版本,以如下方式表示

print(0b1110) # 二进制,以0b开头
print(0o10) # 八进制,以0o开头
print(0x2A) # 十六进制,以0x开头
如果是更早版本,可以用如下方式:

print(int("1110", 2))
print(int("10", 8))
print(int("2A", 16))

相关文章
|
4月前
|
机器学习/深度学习 C++ Python
Python小技巧:蛇形方阵
Python小技巧:蛇形方阵
|
Python
python基础语法小技巧汇总
python基础语法小技巧汇总
83 0
python基础语法小技巧汇总
|
索引 Python
Python3,掌握这20个小技巧,小菜鸡瞬间变成老码农~
Python3,掌握这20个小技巧,小菜鸡瞬间变成老码农~
65 0
|
4月前
|
Python
Python小技巧:一种字符串的排序方式
该文介绍了如何对包含数字的字符串列表进行特定排序。首先,示例了一个初始问题,使用Python内置的`sorted()`函数未能达到预期(按数字部分升序排序)。然后,文章提出通过自定义排序键`sort_key`来解决,利用正则表达式提取字符串尾部数字并进行排序。进一步,文章扩展到处理如'nxxx_name_nxxx'格式的字符串,通过给前缀和后缀数字赋予不同权重进行复合排序,展示了如何实现先按前缀、再按后缀排序的功能。提供的代码示例成功地完成了任务。
|
1月前
|
索引 Python
干货!20个Python使用小技巧
干货!20个Python使用小技巧
|
2月前
|
Python
Python小技巧:一种字符串的排序方式
Python小技巧:一种字符串的排序方式
20 0
|
3月前
|
JavaScript 前端开发 Java
python的入门基础知识和一些小技巧
python的入门基础知识和一些小技巧
23 0
|
4月前
|
存储 Python
10个小技巧,让你的 Python 代码更加优雅~
10个小技巧,让你的 Python 代码更加优雅~
10个小技巧,让你的 Python 代码更加优雅~
|
4月前
|
IDE 开发工具 开发者
2024年最新5个提升生产效率的Python开发和配置的小技巧_python高级开发技巧,字节跳动面试必问
2024年最新5个提升生产效率的Python开发和配置的小技巧_python高级开发技巧,字节跳动面试必问
2024年最新5个提升生产效率的Python开发和配置的小技巧_python高级开发技巧,字节跳动面试必问
|
4月前
|
数据采集 数据挖掘 Python
10个python小技巧,优雅地书写人生_python列表遍历奇数偶数
10个python小技巧,优雅地书写人生_python列表遍历奇数偶数