Python
文章平均质量分 68
一如故往
这个作者很懒,什么都没留下…
展开
-
关于安装opencv编译报错:runtime library * hidden by 等若干问题
最近在有使用opencv的需要,于是安装网上方法安装,编译时报错如下:错误原因不做解释,网上很多。网上其他解决方法不做评价,说说我的拙见。将中括号中的文件,上图为 libz.so.1 在 anaconda3/lib 找出来,所有以 libz.so.1 开头的文件都找出来,然后就在 anaconda3/lib 下随便建个文件夹,如 libz_raw ,然后把那几个 libz.so.1 开头的文件放进去,然后去编译,opencv安装完以后再把他们放出来,简单有效。...原创 2022-03-15 15:24:26 · 5330 阅读 · 1 评论 -
torch.max: 参数详解
torch.max(input)→ TensorParameters input(Tensor) – the input tensor. dim(int) – the dimension to reduce. keepdim(bool) – whether the output tensor hasdimretained or not. Default:False. Keyword Argumentsout(tuple,optional...原创 2021-07-26 09:27:59 · 349 阅读 · 0 评论 -
mongoDB的一些基本命令操作
数据库切换查看当前数据库名称db查看所有数据库名称列出所有在物理上存在的数据库show dbs切换数据库如果数据库不存在,则指向数据库,但不创建,直到插入数据或创建集合时数据库才被创建use 数据库名称默认的数据库为test,如果你没有创建新的数据库,集合将存放在test数据库中数据库删除删除当前指向的数据库如果数据库不存在,则什么也不做db.dropDatabase()集合创建语法db.c...原创 2018-05-26 11:59:41 · 427 阅读 · 0 评论 -
python——Request模块
Requests: 让 HTTP 服务人类虽然Python的标准库中 urllib2 模块已经包含了平常我们使用的大多数功能,但是它的 API 使用起来让人感觉不太好,而 Requests 自称 “HTTP for Humans”,说明使用更简洁方便。Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用:)Requests 继承了urllib2的所有特性。Reque...原创 2018-05-19 18:40:43 · 406309 阅读 · 11 评论 -
python——urllib2:GET请求和POST请求
urllib2默认只支持HTTP/HTTPS的GET和POST方法urllib.urlencode()urllib 和 urllib2 都是接受URL请求的相关模块,但是提供了不同的功能。两个最显著的不同如下:urllib 仅可以接受URL,不能创建 设置了headers 的Request 类实例;但是 urllib 提供 urlencode 方法用来GET查询字符串的产生,而 urllib2 则...原创 2018-05-19 18:36:14 · 11385 阅读 · 4 评论 -
python爬虫——urllib2库的安装及使用
urllib2库的基本使用所谓网页抓取,就是把URL地址中指定的网络资源从网络流中读取出来,保存到本地。 在Python中有很多库可以用来抓取网页,我们先学习urllib2。urllib2 是 Python2.7 自带的模块(不需要下载,导入即可使用)urllib2 官方文档:https://docs.python.org/2/library/urllib2.htmlurllib2 源码:http...原创 2018-05-19 18:14:09 · 156995 阅读 · 8 评论 -
Fiddler抓包工具的使用
HTTP代理神器FiddlerFiddler是一款强大Web调试工具,它能记录所有客户端和服务器的HTTP请求。 Fiddler启动的时候,默认IE的代理设为了127.0.0.1:8888,而其他浏览器是需要手动设置。工作原理Fiddler 是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1,端口:8888Fiddler抓取HTTPS设置启动Fiddler,打开菜单栏中的 Too...原创 2018-05-19 18:12:08 · 345 阅读 · 0 评论 -
windows下python爬虫编码格式报错解决方案
先说说我为何出现了这个问题,因为学完爬虫后想拿豆瓣电影Top250练练手,这个是参考的链接(http://blog.csdn.net/fighting_no1/article/details/50926008),该博客的代码几乎把豆瓣电影上的内容全解析了,于是我先保存代码到本地运行一下,结果是得到的excel文件不对,折腾了一天才知道是解析的网页中&nbsp这个特殊字符在进行转码时无法正确...转载 2018-05-17 19:16:22 · 897 阅读 · 0 评论 -
算法----排序之选择排序
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。 选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,...原创 2018-05-02 23:58:51 · 256 阅读 · 0 评论 -
算法----排序之冒泡排序
冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。冒泡排序算法的运作如下:比较相邻的元素。如果第一个比第二个大(升序),就交换他们两个。对每一对相邻元素作同样的工作,...原创 2018-05-02 19:42:31 · 334 阅读 · 0 评论 -
多线程---共享全局变量
多线程-共享全局变量from threading import Threadimport timeg_num = 100def work1(): global g_num for i in range(3): g_num += 1 print("----in work1, g_num is %d---"%g_num)def work2()...原创 2018-04-07 11:01:20 · 2300 阅读 · 0 评论 -
Python3中利用Queue实现进程间的通信
进程间通信-QueueProcess之间有时需要通信,操作系统提供了很多机制来实现进程间的通信。1. Queue的使用可以使用multiprocessing模块的Queue实现多进程之间的数据传递,Queue本身是一个消息列队程序,首先用一个小实例来演示一下Queue的工作原理:#coding=utf-8from multiprocessing import Queueq=Queue(3) ...原创 2018-04-06 08:58:46 · 3074 阅读 · 0 评论 -
进程池
进程池Pool当需要创建的子进程数量不多时,可以直接利用multiprocessing中的Process动态成生多个进程,但如果是上百甚至上千个目标,手动的去创建进程的工作量巨大,此时就可以用到multiprocessing模块提供的Pool方法。初始化Pool时,可以指定一个最大进程数,当有新的请求提交到Pool中时,如果池还没有满,那么就会创建一个新的进程用来执行该请求;但如果池中的进程数已经...原创 2018-04-05 11:12:18 · 873 阅读 · 0 评论 -
Python3 进程的创建(可跨平台)
multiprocessing如果你打算编写多进程的服务程序,Unix/Linux无疑是正确的选择。由于Windows没有fork调用,难道在Windows上无法用Python编写多进程的程序?由于Python是跨平台的,自然也应该提供一个跨平台的多进程支持。multiprocessing模块就是跨平台版本的多进程模块。multiprocessing模块提供了一个Process类来代表一个进程对象...原创 2018-04-05 10:13:28 · 1076 阅读 · 0 评论 -
Python3 fork炸弹
fork炸弹,仅仅是几行简单的代码,让你的电脑或者服务器内存飙升,不信你可以试试看注意,windows系统中不能实现系统炸弹,只能在Linux,Unix或者Mac中使用fork炸弹import osos.fork()os.fork()os.fork() while True: os.fork()但是,python毕竟是跨平台的windows中也有对应模块中的类可以实现...原创 2018-04-04 21:30:56 · 1871 阅读 · 0 评论 -
爬虫——Scrapy框架
Scrapy 框架Scrapy是用纯Python实现一个为了爬取网站数据、提取结构性数据而编写的应用框架,用途非常广泛。框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便。Scrapy 使用了 Twisted['twɪstɪd](其主要对手是Tornado)异步网络框架来处理网络通讯,可以加快我们的下载速度,不用自己去实现异步框架,并且包含了各...原创 2018-05-19 18:42:32 · 309 阅读 · 0 评论 -
爬虫——三种Scrapy模拟登录方式
注意:模拟登陆时,必须保证settings.py里的 COOKIES_ENABLED (Cookies中间件) 处于开启状态COOKIES_ENABLED = True 或 # COOKIES_ENABLED = False策略一:直接POST数据(比如需要登陆的账户信息)只要是需要提供post数据的,就可以用这种方法。下面示例里post的数据是账户密码:# -*- coding: utf-8 -...原创 2018-05-19 18:45:02 · 5528 阅读 · 0 评论 -
比较完整的二分搜索问题
import redef binary_search(num_list, x): # 二分查找 left, right = 0, len(num_list) while True: while left < right: mid = (left + right) // 2 if num_list[...原创 2018-10-27 15:16:21 · 402 阅读 · 0 评论 -
np.random的各种不同用法
np.random.randn()与np.random.rand()的区别np.random.randn(d0, d1, …, dn)是从标准正态分布中返回一个或多个样本值。 np.random.rand(d0, d1, …, dn)的随机样本位于[0, 1)中。arr1 = np.random.randn(4,4)In [41]:arr1Out[41]:array([[-0.87276976, ...转载 2018-06-26 11:46:32 · 6136 阅读 · 0 评论 -
numpy中numpy.random.seed(0)的用法
# coding:utf-8import numpy# 第一种产生的随机数都相同num = 0while(num < 4): numpy.random.seed(1) print numpy.random.random() num += 1运行结果:0.4170220047030.4170220047030.4170220047030.417022004703...原创 2018-06-02 10:42:21 · 1807 阅读 · 0 评论 -
SVM和超平面方程
1. 背景: 1.1 最早是由 Vladimir N. Vapnik 和 Alexey Ya. Chervonenkis 在1963年提出 1.2 目前的版本(soft margin)是由Corinna Cortes 和 Vapnik在1993年提出,并在1995年发表 1.3 深度学习(2012)出现之前,SVM被认为机器学习中近十几年来最成功,表现最好的算法2. 机器...原创 2018-05-31 22:05:57 · 9698 阅读 · 0 评论 -
Python--sorted函数,operator.itemgetter函数
operator.itemgetter函数operator模块提供的itemgetter函数用于获取对象的哪些维的数据,参数为一些序号(即需要获取的数据在对象中的序号)a = [1,2,3] >>> b=operator.itemgetter(1) //定义函数b,获取对象的第1个域的值>>> b(a) 2 >>> b=operato...转载 2018-05-31 17:27:45 · 270 阅读 · 0 评论 -
import pandas_datareader.data as web报错解决方法
总是遇到各种稀奇古怪的错误。唉 import pandas_datareader.data as web执行这条报错了..解决方法:下面ImportError: cannot import name 'is_list_like' as webYahoo! Finance已经不存在了,因为2017年Yahoo!被Verizon收购了(又是一个让人头疼的故事。百度找到了一个在CSDN博客中的解决办法之...原创 2018-06-21 23:36:33 · 7063 阅读 · 0 评论 -
机器学习中一些基本的算法源码实现及注释详情
1.decision_tree的源码实现:#coding:utf-8from sklearn.feature_extraction import DictVectorizerimport csvfrom sklearn import preprocessingfrom sklearn import treefrom sklearn.externals.six import StringI...原创 2018-06-11 15:30:53 · 951 阅读 · 0 评论 -
运维和shell工具的使用
什么是运维术语名词IDC--(Internet Data Center)互联网数据中心,主要服务包括整机租用、服务器托管、机柜租用、机房租用、专线接入和网络管理服务等。广义上的IDC业务,实际上就是数据中心所提供的一切服务。客户租用数据中心的服务器和带宽,并利用数据中心的技术力量,来实现自己对软、硬件的要求,搭建自己的互联网平台,享用数据中心所提供的一系列服务。ISP--(Internet Ser...原创 2018-05-28 17:51:03 · 3048 阅读 · 0 评论 -
多进程修改全局变量
多进程修改全局变量#coding=utf-8import osimport timenum = 0# 注意,fork函数,只在Unix/Linux/Mac上运行,windows不可以pid = os.fork()if pid == 0: num+=1 print('哈哈1---num=%d'%num)else: time.sleep(1) num...原创 2018-04-04 20:35:02 · 3741 阅读 · 0 评论 -
关于Python3中多次fork创建进程的问题
多次fork问题如果在一个程序,有2次的fork函数调用,是否就会有3个进程呢?#coding=utf-8import osimport time# 注意,fork函数,只在Unix/Linux/Mac上运行,windows不可以pid = os.fork()if pid == 0: print('哈哈1')else: print('哈哈2')pid = os....原创 2018-04-04 20:24:20 · 1330 阅读 · 0 评论 -
pdb调试
调试pdbpdb是基于命令行的调试工具,非常类似gnu的gdb(调试c/c++)。命令简写命令作用breakb设置断点continuec继续执行程序listl查看当前行的代码段steps进入函数returnr执行代码直到从当前函数返回quitq中止并退出nextn执行下一行printp打印变量的值helph帮助argsa查看传入参数 回车重复上一条命令breakb显示所有断点break linen...原创 2018-04-04 17:57:01 · 944 阅读 · 0 评论 -
Python3 ------继承(一)
class Animal: def eat(self): print("吃") def drink(self): print("喝") def run(self): print("跑")class Dog(Animal): def bark(self): print("叫")siberian_Hus...原创 2018-03-01 19:28:30 · 171 阅读 · 0 评论 -
python3深拷贝和浅拷贝
1. 浅拷贝浅拷贝是对于一个对象的顶层拷贝 通俗的理解是:拷贝了引用,并没有拷贝内容2. 深拷贝深拷贝是对于一个对象所有层次的拷贝(递归)进一步理解拷贝In [23]: a = [11,22,33]In [24]: b = [44,55,66]In [25]: c = (a,b)In [26]: e = copy.deepcopy(c)In [27]: a.a...原创 2018-03-15 19:57:32 · 829 阅读 · 0 评论 -
python3 ==和is的区别
如图,详细说明了等号和is的区别可以通过查看地址来解释报错的原因原创 2018-03-15 19:38:46 · 3676 阅读 · 0 评论 -
Python3中的私有方法及其调用方法
Python3中的私有方法:如果在一个方法前面加两个下划线,则此方法会变为私有方法,私有方法不能直接调用,必须构造另一个函数来调用私有方法,私有方法的作用就是在开发的过程中保护核心代码。如:class Dog(): def __send_message(self): print("--------1--------") def test2(self,new_mon...原创 2018-03-01 16:24:38 · 14928 阅读 · 0 评论 -
Python2 range()和xrange()的区别
range() 函数说明:range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列。>>> range(5) [0, 1, 2, 3, 4] >>> range(1,5) [1, 2, 3, 4] >>> range(0,6,2)[0, 2, 4] xran...原创 2018-03-08 17:20:21 · 1281 阅读 · 0 评论 -
Python3 异常及其处理
异常: 异常就是在程序执行的过程中发生了错误,从而无法继续执行后面的代码,导致程序直接崩溃,这就是所谓的“异常”。异常类型: AttributeError 试图访问一个对象没有的属性,比如foo.x,但是foo没有属性xIOError 输入/输出异常;基本上是无法打开文件ImportError 无法引入模块或包;基本上是路径问题或名称错误IndentationError ...原创 2018-03-08 15:09:31 · 1055 阅读 · 0 评论 -
Python3 单例的创建
何为单例?举个常见的单例模式例子,我们日常使用的电脑上都有一个回收站,在整个操作系统中,回收站只能有一个实例,整个系统都使用这个唯一的实例,而且回收站自行提供自己的实例。因此回收站是单例模式的应用。确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,单例模式是一种对象创建型模式。创建单例:# 实例化一个单例class Singleton(object): ...原创 2018-03-08 11:17:11 · 287 阅读 · 0 评论 -
Python3中的__new__()方法
class Dog(object): def __init__(self): print("----init方法-----") def __del__(self): print("----del方法-----") def __str__(self): print("----str方法-----") retu...原创 2018-03-07 20:18:36 · 6403 阅读 · 0 评论 -
实践练习----烤地瓜
1. 分析“烤地瓜”的属性和方法示例属性如下:cookedLevel : 这是数字;0~3表示还是生的,超过3表示半生不熟,超过5表示已经烤好了,超过8表示已经烤成木炭了!我们的地瓜开始时时生的cookedString : 这是字符串;描述地瓜的生熟程度condiments : 这是地瓜的配料列表,比如番茄酱、芥末酱等示例方法如下:cook() : 把地瓜烤一段时间addCondiments() ...原创 2018-02-27 13:20:18 · 408 阅读 · 0 评论 -
Python3中__str__的用法
__str__方法: 使用:如: class Car: def __init__(self, newWheelNum, newColor): self.wheelNum = newWheelNum self.color = newColor def __str__(self): msg = "嘿。。。我的颜色是" + self.co...原创 2018-02-27 13:09:11 · 40938 阅读 · 8 评论 -
Python3中__init__的用法
__init__方法: 使用方式: def 类名: #初始化函数,用来完成一些默认的设定 def __init__(): pass 总结: __init__()方法,在创建一个对象时默认被调用,不需要手动调用 __init__(self)中,默认有1个参数名字为self,如果在创建对象时传递了2个实参,那么__init__(self)中...原创 2018-02-27 13:03:18 · 22108 阅读 · 1 评论 -
单链表的创建及常用基本操作
单向链表单向链表也叫单链表,是链表中最简单的一种形式,它的每个节点包含两个域,一个信息域(元素域)和一个链接域。这个链接指向链表中的下一个节点,而最后一个节点的链接域则指向一个空值。表元素域elem用来存放具体的数据。链接域next用来存放下一个节点的位置(python中的标识)变量p指向链表的头节点(首节点)的位置,从p出发能找到表中的任意节点。节点实现class SingleNode(obje...原创 2018-03-16 19:49:38 · 5900 阅读 · 0 评论