-
Python中线程编程之threading模块的使用详解
所属栏目:[Python] 日期:2020-12-16 热度:141
threading.Thread Thread 是threading模块中最重要的类之一,可以使用它来创建线程。有两种方式来创建线程:一种是通过继承Thread类,重写它的run方法;另一种是创建一个threading.Thread对象,在它的初始化函数(__init__)中将可调用对象作为参数传入。下[详细]
-
Shell中if的基本语法和常见判断用法
所属栏目:[Python] 日期:2020-12-16 热度:62
if,for,while几乎是所有编程语言的关键字,在Shell编程中也不例外,其中if是使用频率最高的,由于Shell编程中不存在对象(Object)的概念,因此在if的比较判断中主要是对字符串、数字的值进行比较判断的: 一. if的基本语法 1.if与[之间要有空格 2.[]与判断条[详细]
-
Python实现LRU算法的2种方法
所属栏目:[Python] 日期:2020-12-16 热度:151
LRU:least recently used,最近最少使用算法。它的使用场景是:在有限的空间中存储对象时,当空间满时,会按一定的原则删除原有的对象,常用的原则(算法)有LRU,FIFO,LFU等。在计算机的Cache硬件,以及主存到虚拟内存的页面置换,还有Redis缓存系统中都[详细]
-
web.py在SAE中的Session问题解决方法(使用mysql存储)
所属栏目:[Python] 日期:2020-12-16 热度:96
这段时间一直想尝试着在SAE中使用Python,初步选择了Web.py框架做为开发框架,但是可怜SAE上的资料少的可怜,有点问题基本上解决不了,今天解决一个Session在Session的存储问题,在SAE中不能直接用本地文件存储,好像是权限的原因,我现在采用的是保存在mysql[详细]
-
Python函数式编程指南(一):函数式编程概述
所属栏目:[Python] 日期:2020-12-16 热度:154
1. 函数式编程概述 1.1. 什么是函数式编程? 函数式编程使用一系列的函数解决问题。函数仅接受输入并产生输出,不包含任何能影响产生输出的内部状态。任何情况下,使用相同的参数调用函数始终能产生同样的结果。 在一个函数式的程序中,输入的数据“流过”一[详细]
-
Python函数式编程指南(三):迭代器详解
所属栏目:[Python] 日期:2020-12-16 热度:185
3. 迭代器 3.1. 迭代器(Iterator)概述 迭代器是访问集合内元素的一种方式。迭代器对象从集合的第一个元素开始访问,直到所有的元素都被访问一遍后结束。 迭代器不能回退,只能往前进行迭代。这并不是什么很大的缺点,因为人们几乎不需要在迭代途中进行回退操[详细]
-
Python函数式编程指南(四):生成器详解
所属栏目:[Python] 日期:2020-12-16 热度:186
4. 生成器(generator) 4.1. 生成器简介 首先请确信,生成器就是一种迭代器。生成器拥有next方法并且行为与迭代器完全相同,这意味着生成器也可以用于Python的for循环中。另外,对于生成器的特殊语法支持使得编写一个生成器比自定义一个常规的迭代器要简单不[详细]
-
Python线程详解
所属栏目:[Python] 日期:2020-12-16 热度:93
1. 线程基础 1.1. 线程状态 线程有5种状态,状态转换的过程如下图所示: 1.2. 线程同步(锁) 多线程的优势在于可以同时运行多个任务(至少感觉起来是这样)。但是当线程需要共享数据时,可能存在数据不同步的问题。考虑这样一种情况:一个列表里所有元素都[详细]
-
Python装饰器使用实例:验证参数合法性
所属栏目:[Python] 日期:2020-12-16 热度:143
python是不带静态检查的动态语言,有时候需要在调用函数时保证参数合法。检查参数合法性是一个显著的切面场景,各个函数都可能有这个需求。但另一方面,参数合法性是不是应该由调用方来保证比较好也是一个需要结合实际才能回答的问题,总之双方约定好,不要[详细]
-
Python中的下划线详解
所属栏目:[Python] 日期:2020-12-16 热度:188
这篇文章讨论Python中下划线_的使用。跟Python中很多用法类似,下划线_的不同用法绝大部分(不全是)都是一种惯例约定。 一、单个下划线直接做变量名(_) 主要有三种情况: 1. 解释器中 _符号是指交互解释器中最后一次执行语句的返回结果。这种用法最初出现[详细]
-
Python中的默认参数详解
所属栏目:[Python] 日期:2020-12-16 热度:95
文章的主题 不要使用可变对象作为函数的默认参数例如 list,dict,因为def是一个可执行语句,只有def执行的时候才会计算默认默认参数的值,所以使用默认参数会造成函数执行的时候一直在使用同一个对象,引起bug。 基本原理 在 Python 源码中,我们使用def来定[详细]
-
Python实现保证只能运行一个脚本实例
所属栏目:[Python] 日期:2020-12-16 热度:150
保证只能运行一个脚本实例,方法是程序运行时监听一个特定端口,如果失败则说明已经有实例在跑。 使用装饰器实现,便于重用 复制代码 代码如下: import functools def just_one_instance(func): ''' 装饰器 如果已经有实例在跑则退出 复制代码 代码如下: :re[详细]
-
Python中的zipfile模块使用详解
所属栏目:[Python] 日期:2020-12-16 热度:96
zip文件格式是通用的文档压缩标准,在ziplib模块中,使用ZipFile类来操作zip文件,下面具体介绍一下: class zipfile.ZipFile(file[,mode[,compression[,allowZip64]]]) 创建一个ZipFile对象,表示一个zip文件。参数file表示文件的路径或类文件对象(file-lik[详细]
-
在Python中使用zlib模块进行数据压缩的教程
所属栏目:[Python] 日期:2020-12-16 热度:55
Python标准模块中,有多个模块用于数据的压缩与解压缩,如zipfile,gzip,bz2等等。上次介绍了zipfile模块,今天就来讲讲zlib模块。 zlib.compress(string[,level]) zlib.decompress(string[,wbits[,bufsize]]) zlib.compress用于压缩流数据。参数string指定[详细]
-
python读取TXT到数组及列表去重后按原来顺序排序的方法
所属栏目:[Python] 日期:2020-12-16 热度:153
本篇章节讲解python读取TXT到数组及列表去重后按原来顺序排序的方法。供大家参考研究。具体如下: ##################################################################### python 读取TXT到数组 列表去重,不打乱原来的顺序# 刚学写的不好请大家见[详细]
-
自动化Nginx服务器的反向代理的配置方法
所属栏目:[Python] 日期:2020-12-16 热度:124
如果可以减少过多的外部隔离的API和简化部署的细节 这会是非常好的。 在以前的文章中,我解释了"一些使用反向代理的好处"。在我目前的项目里,我们已经构建分布式面向服务的架构,也显式提供了一个HTTP API,我们使用反向代理将请求路由通过API路由给单个组[详细]
-
python实现linux下使用xcopy的方法
所属栏目:[Python] 日期:2020-12-16 热度:51
本篇章节讲解python实现linux下使用xcopy的方法。供大家参考研究。具体如下: 这个python函数模仿windows下的xcopy命令编写,可以用在linux下 #!/usr/bin/python# -*- coding: UTF-8 -*-"""xcopy for Linux...Use:_________________________________[详细]
-
分析用Python脚本关闭文件操作的机制
所属栏目:[Python] 日期:2020-12-16 热度:154
如果不用“with”,那么Python会在何时关闭文件呢?答案是:视情况而定。 Python程序员最初学到的东西里有一点就是可以通过迭代法很容易地遍历一个打开文件的全文: f = open('/etc/passwd')for line in f: print(line) 注意上面的代码具有可行性,因为我们[详细]
-
python实现搜索指定目录下文件及文件内搜索指定关键词的方法
所属栏目:[Python] 日期:2020-12-16 热度:73
本篇章节讲解python实现搜索指定目录下文件及文件内搜索指定关键词的方法。供大家参考研究。具体实现方法如下: #!/usr/bin/python -O# -*- coding: UTF-8 -*-"""Sucht rekursiv in Dateiinhalten und listet die Fundstellen auf."""__author__ = "[详细]
-
python中getaddrinfo()基本用法实例分析
所属栏目:[Python] 日期:2020-12-16 热度:103
本篇章节讲解python中getaddrinfo()基本用法。供大家参考研究。具体如下: import sys,socketresult = socket.getaddrinfo("192.1.1.100",None)print result[0][4]print result 输出结果: ('172.20.53.102',0)[(2,'',('172.20.53.102',0))] 希望本[详细]
-
python查找指定具有相同内容文件的方法
所属栏目:[Python] 日期:2020-12-16 热度:92
本篇章节讲解python查找指定具有相同内容文件的方法。供大家参考研究。具体如下: python代码用于查找指定具有相同内容的文件,可以同时指定多个目录 调用方式:python doublesdetector.py c:;d:;e: doubles.txt # Hello,this script is written[详细]
-
python自动zip压缩目录的方法
所属栏目:[Python] 日期:2020-12-16 热度:127
本篇章节讲解python自动zip压缩目录的方法。供大家参考研究。具体实现方法如下: 这段代码来压缩数据库备份文件,没有使用python内置的zip模块,而是使用了zip.exe文件 # Hello,this script is written in Python - http://www.python.org## autozip[详细]
-
python实现根据主机名字获得所有ip地址的方法
所属栏目:[Python] 日期:2020-12-16 热度:150
本篇章节讲解python实现根据主机名字获得所有ip地址的方法。供大家参考研究。具体实现方法如下: # -*- coding: utf-8 -*-import sys,socketresult = socket.getaddrinfo('www.google.com',None,socket.SOCK_STREAM)counter = 0for item in result:[详细]
-
python实现将html表格转换成CSV文件的方法
所属栏目:[Python] 日期:2020-12-16 热度:176
本篇章节讲解python实现将html表格转换成CSV文件的方法。供大家参考研究。具体如下: 使用方法:python html2csv.py *.html 这段代码使用了 HTMLParser 模块 #!/usr/bin/python# -*- coding: iso-8859-1 -*-# Hello,this program is written in Pyth[详细]
-
Python实现将绝对URL替换成相对URL的方法
所属栏目:[Python] 日期:2020-12-16 热度:160
本篇章节讲解Python实现将绝对URL替换成相对URL的方法。供大家参考研究。具体分析如下: 一、问题: 公司一个项目需要上传图片,一开始同事将图片上传后结合当前主机拼成了一个绝对的URL(http://192.168.1.1:888/m/getimgfilename=xxx.jpg)由于同时给[详细]
