Python杂记
一.函数
1.numpy 模块中的nonzero函数
nonzero返回的数非零元素的下标。
如果输入是单维度的时候它的返回值只有一个;如果输入是多个维度的话,那么它的返回值也是多个维度的。并且的它的每个维度的值表示的是非零元素在当前维度中的下标。
i.e
a = [true, flase, flase]
nonzero(a)
那么此时的它的返回值应该是((0))
a=matrix[[1,0,0],[0,1,0],[0,0,1]]
nonzero(a)
那么此时它的返回值应该是((0,1,2),(0,1,2)),可以看到此时返回了两个参数,其实这两个参数就表示两个维度中(对应于a中的纵坐标和横坐标)对应的非零元素的下标。比如第0行第0列的是非零元素,也就是第一个维度的下标为0,第二度维度的下标也为0,所以可以看到返回的两个参数中的第一个值都是0。(1,1),(2,2)的结果同理。
2.hasattr,setattr,getattr的区别
hasattr(object, name):判断object是否含有name属性,返回boolean值,有的话是true,否则为false
setattr(object, name, value):设置object 的name属性为value值
getattr(object, name[,defalut]):获取object的name属性的值(如果存在这个属性的话,就获取它的值,不存在这个值的话,有default值就返回default值。没有的话就为缺省值)
二.符号
在python 中'//'表示整数除法
i.e:
3.0/2:
1.5
3.0//2:
1.0
三.错误与异常
1.预定义理行为
我们知道在打开一个文件之后要及时的关闭文件,为了避免忘记文件的关闭,我们可以进行预定义清理行为
//dangerous method for line in open(filename):
print(line) // safe method with open(filename) as f
for line in f:
print(line)
Python杂记的更多相关文章
- python杂记-4(迭代器&生成器)
#!/usr/bin/env python# -*- coding: utf-8 -*-#1.迭代器&生成器#生成器#正确的方法是使用for循环,因为generator也是可迭代对象:g = ...
- python杂记-3(购买商品)
#!/usr/bin/env python# -*- coding: utf-8 -*-#如下是一个购物程序:#先输入工资,显示商品列表,购买,quit退出,最后格式化输出所买的商品.count = ...
- python杂记-1(os模块)
os模块说明:python os模块包含普遍的操作系统功能 os.access(path, mode) # 检验权限模式 os.chdir(path) # 改变当前工作目录os.chflags(pat ...
- python杂记-6(time&datetime模块)
#!/usr/bin/env python# -*- coding: utf-8 -*-import timeprint(time.clock())##返回处理器时间,3.3开始已废弃 , 改成了ti ...
- python杂记-5(装饰器)
1.被装饰的函数有参数(一个参数): def w1(func): def inner(arg): # 验证1 # 验证2 # 验证3 return func(arg) return inner @w1 ...
- python 杂记
class TestA(object): def __init__(self): print("A is initing"); def foo(self): print(" ...
- python杂记二
1. 写文件可以直接使用print函数 file_name = open("file_name.txt","w") print("file conta ...
- python杂记一
1. 输出CSV文件 用python输出csv文件不难,可是MS office excel和WPS 对输出的CSV文件打开规则不一样. WPS可以支持CSV以'\t'为分隔符,打开文件直接写内容 MS ...
- Python——杂记
python 最近出错总结: 1.而for..in ..中不要用else if x in y: print else: print2.def fibs(num): ... ...
随机推荐
- C#中的泛型化方法的实现
在一个基本数据类型的方法中求解最大值或者最小值是一件很方便,同时也是很简单的事.但是如果你想复用这个方法,我们就需要使用到泛型编程的概念了.这就好比是C++中的模板函数,或者java中的泛型操作.相比 ...
- linux 编译c程序与动态链接库
linux 下编译c程序与动态链接库 1 动态库h文件和c文件 1.1 h 文件: kaflog4c.h /** * kaflog4c.h */ #include <stdio.h> #i ...
- C++ Primer 有感(重载操作符)
1.用于内置类型的操作符,其含义不能改变.也不能为任何内置类型定义额外的新的操作符.(重载操作符必须具有至少一个类类型或枚举类型的操作数.这条规则强制重载操作符不能重新定义用于内置类型对象的操作符的含 ...
- Mahout推荐算法之ItemBased
Mahout推荐之ItemBased 一. 算法原理 (一) 基本原理 如下图评分矩阵所示:行为user,列为item. 图(1) 该算法的原理: 1. 计算Item之间的相似度. 2. ...
- 【一天一道LeetCode】#55. Jump Game
一天一道LeetCode系列 (一)题目 Given an array of non-negative integers, you are initially positioned at the fi ...
- 在android C/C++ native编程(ndk)中使用logcat
最近在研究Android 2.2 源代码的C/C++层,需要对代码进行一些调试,但是奇怪的是,直接添加LOGD("XXXXXXXX");,使用logcat却看不到任何输出,换成LO ...
- 使用SVM对多类多维数据进行分类
最近,本人要做个小东西,使用SVM对8类三维数据进行分类,搜索网上,发现大伙讨论的都是二维数据的二分类问题,遂决定自己研究一番.本人首先参考了opencv的tutorial,这也是二维数据的二分类问题 ...
- 使用 Linux 的 strace 命令跟踪/调试程序的常用选项
原文:http://linoxide.com/linux-command/linux-strace-command-examples/作者: Raghu 在调试的时候,strace能帮助你追踪到一个程 ...
- OAF中的TableLayout 高级表格
我们经常会遇到这种情况,我们要把显示界面分成几块区域来分别显示不同的内容.比如在同一行左边显示messageComponentLayout,右边显示table,这时,我们就要用到tableLayout ...
- 【freeradius】使用radclient调试radius协议
freeradius 自带了非常好的客户端程序 radtest, radclient 用来模拟和调试设备和通信过程.radtest多用于认证,radclient更为强大一些,认证,计费,coa都可以模 ...