随笔分类 -  Python

摘要:原生的python是用C实现的,因此python可以很容易的实现C/C++的扩展 python和c/c的互相调用,本质上就是c和c的互相调用而已。 写c扩展可以用cython或ctypes 写c++扩展可以用boost-python或pybind11或ctypes 阅读全文
posted @ 2020-09-16 17:16 Parallax 阅读(235) 评论(0) 推荐(0)
摘要:sys.path是一个python搜索模块的路径列表. 里面包含了当前虚拟环境(如pytorch_13)下的要调用的库的目录以及当前“包命名空间”目录. “包命名空间”:一个源码库没有__init__.py把它弄成包,那么在打开的时候解释器会自动将源码库的目录加入一个特殊的叫做“包命名空间”,(而这 阅读全文
posted @ 2020-09-16 17:04 Parallax 阅读(280) 评论(0) 推荐(0)
摘要:import logging logging.basicConfig(level=logging.DEBUG,#输出级别限制 format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s', datefmt=' 阅读全文
posted @ 2020-09-16 11:23 Parallax 阅读(119) 评论(0) 推荐(0)
摘要:easydict的作用:可以使得以属性的方式去访问字典的值! from easydict import EasyDict as edict # 字典的key就随意,单双引号皆可 d = edict({'foo':3, 'bar':{'x':1, 'y':2}}) d.foo d.bar.x d.fo 阅读全文
posted @ 2020-07-20 10:54 Parallax 阅读(376) 评论(0) 推荐(0)
摘要:ConfigParser不仅可以读取配置文件,还可以写入配置文件 首先,命名基本的配置文件: config.ini 本质上: 配置文件包含多个section:[DEFAULT],[bitbucket.org],[topsecret.server.com] 每个section包含若干个键值对,这里的键 阅读全文
posted @ 2020-07-20 10:35 Parallax 阅读(411) 评论(0) 推荐(0)
摘要:print assert #优雅点,效果同print pdb.set_trace可以在怀疑有问题的地方设置断点开始单步执行,结合 “p 变量名” 查看变量值,“c”继续运行。 只是pdb会全局单步。 打断点,注意使用二分法快速定位问题所在 log日志:最强大 https://www.cnblogs. 阅读全文
posted @ 2020-06-25 19:00 Parallax 阅读(106) 评论(0) 推荐(0)
摘要:class linkedlist: def __init__(self,value): #只在创建对象时调用一次! self.head={'value':value,'next':None}#self恰恰提供了我们将属性封装到对象的能力。self是实现封装的关键。 self.tail=self.he 阅读全文
posted @ 2020-06-09 20:29 Parallax 阅读(367) 评论(0) 推荐(0)
摘要:字符 描述\ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multilin 阅读全文
posted @ 2020-05-16 10:33 Parallax 阅读(4459) 评论(0) 推荐(0)
摘要:1.命名要有意义 如方法名:动宾 命名要能读得出来 命名具有一致性,且尽量使用领域内专业术语 2.函数 函数尽量短小 每个函数只抽象一次 函数参数越少越好,超过三个说明参数需要封装(如封成一个类) 3.注释 需要注释基本可以代表代码整体的表达能力不好,可读性不好,wtf太多,是不是代码耦合度太高? 阅读全文
posted @ 2020-04-14 22:14 Parallax 阅读(328) 评论(0) 推荐(0)
摘要:1 #include <iostream> 2 #include <fstream> 3 #include <string> 4 #include "opencv2/opencv_modules.hpp" 5 #include <opencv2/core/utility.hpp> 6 #includ 阅读全文
posted @ 2020-04-08 14:11 Parallax 阅读(814) 评论(0) 推荐(0)
摘要:https://www.cnblogs.com/ifantastic/p/3175735.html 在继承基类实例化时,首先调用的__new__方法根据其第一个参数(即将生成的类)确定用哪个基类的__init__方法去初始化。 __new__方法是实例化的准备工作,在__init__之前运行。__i 阅读全文
posted @ 2020-03-31 15:05 Parallax 阅读(142) 评论(0) 推荐(0)
摘要:1.一般用 / 表示相对路径,用\\表示绝对路径(\转义符的缘故,也可以用 r'\' ) E:/file1/file2/a.py 2. 相对路径: ./a.py 表示不包括文件a.py的那些部分,等价于a.py,等价于 E:/file1/file2 3.相对路径: ../a.py 表示不包括a.py 阅读全文
posted @ 2020-03-06 01:06 Parallax 阅读(1955) 评论(0) 推荐(0)
摘要:def log(): 装饰器本质上是一个接受函数作为参数,并返回一个函数的这种高阶函数,用在定义函数或类时。log就是装饰器 装饰器可以用函数实现,也可以用类实现。 python放置装饰器的语法:@log 1 @property: 2 3 class DataSet(object): 4 @prop 阅读全文
posted @ 2020-02-25 17:05 Parallax 阅读(460) 评论(0) 推荐(0)
摘要:*星号(asterisk)主要在函数定义和函数调用时使用。与C语言中的指针无任何关系。 1.函数定义时 使用单个*会将所有的参数,放入一个元组tuple供函数使用 使用**会将所有的关键字参数,放入一个字典dict供函数使用 2.函数调用时 在list,tuple,set前加*,会将容器中所有元素解 阅读全文
posted @ 2020-02-25 16:07 Parallax 阅读(228) 评论(0) 推荐(0)
摘要:模块是指.py 包是指包含多个.py文件和一个__init__.py的package。没有__init__.py则此文件夹只是普通文件夹不是包(package) 因为模块多了之后会冲突,把它放到不同的包里。 一、什么是封装 在程序设计中,封装(Encapsulation)是对具体对象的一种抽象,即将 阅读全文
posted @ 2020-02-13 23:45 Parallax 阅读(274) 评论(0) 推荐(0)
摘要:1 import numpy as np 2 np.random.seed(123) 3 a = np.random.randint(0,5,[3,3,2]) 4 print(a) 5 6 print(a[-1,:,:]) # -1 就是 2 7 #Output: 8 9 [[[2 4] 10 [2 阅读全文
posted @ 2019-11-20 11:33 Parallax 阅读(315) 评论(0) 推荐(0)
摘要:numpy copy分为三种,no copy,shallow copy or view,deep copy三种。 1 无拷贝 简单的复制操作不会产生对象的复制操作。 1 import numpy as np 2 a = np.arange(12) 3 b=a #对象复制,a,b地址一样 4 b.sh 阅读全文
posted @ 2019-09-27 17:17 Parallax 阅读(512) 评论(0) 推荐(0)
摘要:Python 标准库之 xml.etree.ElementTree 简介 Element类型是一种灵活的容器对象,用于在内存中存储结构化数据。 [注意]xml.etree.ElementTree模块在应对恶意结构数据时显得并不安全。 每个element对象都具有以下属性: 1 1. tag:stri 阅读全文
posted @ 2019-09-27 09:22 Parallax 阅读(206) 评论(0) 推荐(0)
摘要:1 A= [5, 2, 3, 1, 4] 2 print(sorted(A)) 3 print(A) 4 5 """ 6 [1, 2, 3, 4, 5] 7 [5, 2, 3, 1, 4]""" 8 9 10 11 A=[5, 2, 3, 1, 4] 12 b=A.sort() #A.sort()方 阅读全文
posted @ 2019-05-06 04:13 Parallax 阅读(124) 评论(0) 推荐(0)
摘要:1 """生成3×3的数组,随机数服从N(0,1)的正态分布,即n指normal""" 2 import numpy as np 3 print(np.random.randn(3,3)) 4 5 """生成1000×72的数组,0-1之间的均匀分布,random.rand(a,b)与而random 阅读全文
posted @ 2019-04-23 04:21 Parallax 阅读(679) 评论(0) 推荐(0)