文章目录多任务编程进程进程的优先级父子进程进程相关的函数os.getpid()os.getppid()os._exit(status)sys.exit([status])僵尸进程处理僵尸进程的方法os.wait()os.waitpid(pid,option)创建二级子进程处理在父进程中使用信号处理的方法,忽略子进程发来的信号孤儿进程多任务编程可以有效的利用计算机资源,同时执行多个任务进程进程就是程序在计算机中一次执行的过程进程和程序的区别:程序是一个静态文
系统 2019-09-27 17:55:24 2458
前言通常我们的python代码都是遵循PEP8的规范化格式,目的是为了保持代码的一致性、可读性。,这里给大家推荐几个常用的静态代码检查工具,大家可以酌情选择使用1.pylintPylint是一个Python静态代码分析工具,它可以查找编程错误,帮助强制执行编码标准,嗅探代码异味并提供简单的重构建议。它具有高度可配置性,具有特殊的编译指示来控制代码中的错误和警告,以及广泛的配置文件。也可以编写自己的插件来添加自己的检查或以某种方式扩展pylint。缺省情况下
系统 2019-09-27 17:54:07 2458
原文链接:https://blog.csdn.net/swinfans/article/details/86501555简介Json模块主要用来进行Python对象的序列化和反序列化。该模块中常用的方法有以下四个:json.dump将Python对象序列化为Json格式的数据流并写入文件类型的对象中json.dumps将Python对象序列化为Json格式的字符串json.load从文件类型的对象中读取Json格式的数据并反序列化成Python对象json
系统 2019-09-27 17:52:55 2458
01.递归实现快排:defquick_sort(array):iflen(array)<2:returnarrayelse:pivot=array[0]less=[xforxinarray[1:]ifx<=pivot]more=[xforxinarray[1:]ifx>pivot]returnquick_sort(less)+[pivot]+quick_sort(more)a=[1,9,4,2,7,5]print(quick_sort(a))02.冒泡排序
系统 2019-09-27 17:51:51 2458
python是支持多线程的,主要是通过thread和threading这两个模块来实现的。thread模块是比较底层的模块,threading模块是对thread做了一些包装的,可以更加方便的使用。虽然python的多线程受GIL限制,并不是真正的多线程,但是对于I/O密集型计算还是能明显提高效率,比如说爬虫。下面用一个实例来验证多线程的效率。代码只涉及页面获取,并没有解析出来。#-*-coding:utf-8-*-importurllib2,timeim
系统 2019-09-27 17:37:48 2458
做爬虫项目时,我们需要考虑一个爬虫在爬取时会遇到各种情况(网站验证,ip封禁),导致爬虫程序中断,这时我们已经爬取过一些数据,再次爬取时这些数据就可以忽略,所以我们需要在爬虫项目中设置一个中断重连的功能,使其在重新运行时从之前断掉的位置重新爬取数据。实现该功能有很多种做法,我自己就有好几种思路,但是真要自己写出来就要费很大的功夫,下面我就把自己好不容易拼凑出来的代码展示出来吧。首先是来介绍代码的思路:将要爬取的网站连接存在一个数组new_urls中,爬取一
系统 2019-09-27 17:56:18 2457
就前面所讲,函数的基本内容已经完毕。但是,函数还有很多值得不断玩味的细节。这里进行阐述。参数的传递python中函数的参数通过赋值的方式来传递引用对象。下面总结通过总结常见的函数参数定义方式,来理解参数传递的流程。deffoo(p1,p2,p3,...)这种方式最常见了,列出有限个数的参数,并且彼此之间用逗号隔开。在调用函数的时候,按照顺序以此对参数进行赋值,特备注意的是,参数的名字不重要,重要的是位置。而且,必须数量一致,一一对应。第一个对象(可能是数值
系统 2019-09-27 17:55:33 2457
本章包括1、一个神经网络的例子2、张量和张量操作3、神经网络如何通过反向传播和梯度下降来学习一、一个神经网络的例子GitHub链接使用Python库Keras学习对手写数字进行分类的神经网络(将手写数字(28*28px)的灰度图像分为10个类别:0-9;使用MNIST数据集,含有6000张测试图像,10000张训练图像)1、在Keras中加载MNIST数据集fromkeras.datasetsimportmnist(train_images,train_l
系统 2019-09-27 17:54:23 2457
python多线程可以使任务得到并发执行,但是有时候在执行多次任务的时候,变量出现“意外”。importthreading,timen=0start=time.time()defb1(num):globalnn=n+numn=n-numdefb2(num):foriinrange(1000000):b1(num)t1=threading.Thread(target=b2,args=(5,))t2=threading.Thread(target=b2,arg
系统 2019-09-27 17:51:27 2457
classTeacher:dic={'查看学生信息':'show_student','查看讲师信息':'show_teacher'}defshow_student(self):print('show_student')defshow_teacher(self):print('show_teacher')@classmethoddeffunc(cls):print('hahaha')alex=Teacher()forkinTeacher.dic:print(
系统 2019-09-27 17:50:58 2457
Python函数的设计规范1、Python函数设计时具备耦合性和聚合性1)、耦合性:(1).尽可能通过参数接受输入,以及通过return产生输出以保证函数的独立性;(2).尽量减少使用全局变量进行函数间通信;(3).不要在函数中直接修改可变类型的参数;(4).避免直接改变定义在另外一个模块中的变量;2)、聚合性:(1).每个函数都应该有一个单一的、目的统一的目标;(2).每个函数的功能都应该相对简单;2、Python函数在脚本中应用示例例1:将/etc/p
系统 2019-09-27 17:49:05 2457
这个周末是六一,笔者分享一下给孩子做的一个小程序,这样的例子需要有趣、简单有动画效果,所以我就用python的dash_bio给孩子展示了DNA的分子结构,效果不错:)dash_bio库的安装·首先是安装dash_bio库,他的例程是基于python2.7的,不过python3应该也行,稍微改一下代码即可。执行下列语句即可完成安装。这其中没遇到什么坑。pipinstalldash-bio==0.0.10pipinstalldash_html_compone
系统 2019-09-27 17:45:49 2457
本文以简单示例分析了python中关键字is与==的区别,供大家参考一下。首先说明一下Python学习中几个相关的小知识点。Python中的对象包含三要素:id、type、value其中:id用来唯一标识一个对象,type标识对象的类型,value是对象的值is判断的是a对象是否就是b对象,是通过id来判断的==判断的是a对象的值是否和b对象的值相等,是通过value来判断的具体示例如下:>>>a=100>>>b=100.0>>>aisbFalse>>>a
系统 2019-09-27 17:38:34 2457
生成器是python中一个非常酷的特性,python2.2中引入后在2.3变成了标准的一部分。它能够让你在许多情况下以一种优雅而又更低内存消耗的方式简化无界(无限)序列相关的操作。生成器是可以当做iterator使用的特殊函数,它功能的实现依赖于关键字yield,下面是它如何运作一个简单的演示:>>>defspam():yield"first"yield"second"yield"third">>>spam
系统 2019-08-12 09:27:14 2457
1、爬虫概念爬虫:写一段代码,去指定的url(网站)去获取指定的数据互联网:或联网中,给你一个起始url,比如:www.baidu.com,互联网中的节点都是一个al链接,或者称之为url1.1通用爬虫:百度,搜狗,google,雅虎,bing1.1.1他们的工作:1.爬取所有信息2.主动提交url3.百度主动和域名服务商合作1.1.2如果不想让百度抓取?robots.txt放到django根目录1.1.3网站排名:魏则西事件pagerank1.2
系统 2019-09-27 17:57:14 2456