python
文章平均质量分 52
Max-Jin
他人可见的日常笔记而已。
展开
-
用pipenv创建虚拟环境,并在pycharm里应用
安装pipenvpip install pipenv查看pipenv用法pipenv进入到你存放虚拟环境的路径下,创建虚拟环境cd D:\pycharm\venv\io_interactionpipenv --three会在该目录下生成Popflie文件,存储虚拟环境相关信息,可用文本编辑器打开。该文件默认是外国的源,此时可以将其改为国内源:https://pypi.tuna.tsinghua.edu.cn/simple/,这样库的安装速度会快一点激活虚拟环境.原创 2022-05-26 15:07:05 · 1199 阅读 · 0 评论 -
【windows10升级python版本】
python版本升级卸载旧版本python安装新版本python卸载旧版本python用安装包进行卸载比较简单双击后点击uninstall等待卸载完成即可最后找到安装的目录删除安装新版本python去官网下载安装包地址:https://www.python.org/downloads/windows/找到自己想下载的版本下载即可。安装下载完成后双击安装包进行安装。检验是否安装成功...原创 2021-12-10 11:00:48 · 16021 阅读 · 0 评论 -
python基础之os.system函数
前言os.system方法是os模块最基础的方法,其它的方法一般在该方法基础上封装完成。os的system原理system函数可以将字符串转化成命令在服务器上运行;其原理是每一条system函数执行时,其会创建一个子进程在系统上执行命令行,子进程的执行结果无法影响主进程;上述原理会导致当需要执行多条命令行的时候可能得不到预期的结果;import osos.system('cd /usr/local')os.mkdir('aaa.txt)上述程序运行后会发现txt文件并没有创建在/us原创 2021-08-10 10:15:53 · 10009 阅读 · 0 评论 -
定时任务框架APScheduler
前言工作中遇到了有些任务需要定时执行的需求,Python中定时任务的解决方案,总体来说有四种,分别是: crontab、 scheduler、 Celery、 APScheduler,其中 crontab不适合多台服务器的配置、 scheduler太过于简单、 Celery依赖的软件比较多,比较耗资源。最好的解决方案就是 APScheduler。APScheduler使用起来十分方便。提供了基于日期、固定时间间隔以及 crontab类型的任务。还可以在程序运行过程中动态的新增任务和删除任务。在任务运行过原创 2021-08-05 16:12:49 · 258 阅读 · 0 评论 -
python第三方库批量导入导出
批量导出:pip freeze > requirements.txt批量导入:pip install -r requirements.txt原创 2021-08-04 16:06:23 · 385 阅读 · 0 评论 -
pyc文件反编译成py文件
前言从git上拉下来的程序,运行的时候发现import少一个py文件,相应文件夹下只有对应的pyc文件,且程序运行报import不了这个文件模块。基础知识pyc是一种二进制文件,是由py文件经过编译后,生成的文件,是一种byte code,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python的虚拟机来执行的,这个是类似于JAVA或者.NET的虚拟机的概念。pyc的内容,是跟python的版本相关的,不同版本编译后的pyc文件是不同的,3.7编译的pyc文件,3原创 2020-12-13 16:15:31 · 11430 阅读 · 0 评论 -
2020-11-27
对象引用变量不是盒子标识、相等性和别名在==和is之间选择元组的相对不可变性默认做浅复制为任意对象做深复制和浅复制函数的参数作为引用时变量不是盒子a = [1,2,3]b = aa.append(4)print(b) # [1, 2, 3, 4]如果把变量想象为盒子,那么无法解释Python中的赋值;应该把变量视作便利贴,上述的例子就可以理解了。创建了对象之后,才会把变量分给对象class Gizmo: def __init__(self): print('Giz原创 2020-11-27 11:35:38 · 107 阅读 · 0 评论 -
函数装饰器和闭包
函数装饰器装饰器基础知识Python何时执行装饰器闭包nonlocal声明实现一个简单的装饰器标准库中的装饰器使用functools.lru_cache做备忘functools.singledispatch装饰器叠放装饰器参数化装饰器装饰器是可调用的对象,其参数是另一个函数(被装饰的函数)。装饰器可能会处理被装饰的函数,然后把它返回,或者将其替换成另一个函数或可调用对象。装饰器基础知识加入有个名为decorate的装饰器:@decoratedef target(): print('runi原创 2020-11-26 17:03:53 · 117 阅读 · 0 评论 -
函数对象
一等函数一等对象高阶函数函数内省函数注解函数编程式的包operstor模块算术运算符函数itemgetter函数methodcaller函数functools.partial冻结参数一等对象在运行时创建能赋值给变量或数据结构中的元素能作为参数传给函数能作为函数的返回结果整数、字符串、字典都是一等对象。高阶函数接受函数为参数,或者把函数作为结果返回的函数是高阶函数;最为人熟知的高阶函数有map、filter、reduce、apply;sum和reduce的通用思想是把某个操作连续应用到原创 2020-11-26 11:28:06 · 118 阅读 · 1 评论 -
数组笔记
序列构成的数组笔记元祖for循环可以分别提取元祖里的元素,也叫作**拆包**。用 * 运算符把一个可迭代对象拆开作为函数的参数;用 * 来获取不确定数量的参数算是一种经典做法具名元祖。给切片赋值。不要把可变对象放进元组里;list.sort和sorted双向队列。字典补充计划元祖元祖不仅仅是不可变列表,元祖其实是对数据的记录:元祖的每个元素都存放了记录中一个字段的数据,外加这个字段的位置。正是这个位置信息给数据赋予了意义。for循环可以分别提取元祖里的元素,也叫作拆包。lax_coordinates原创 2020-11-23 09:44:48 · 364 阅读 · 0 评论 -
collection库笔记
collection库笔记计数器(Counter)Counter可以支持方便、快速的计数Counter对象支持三个字典不支持的方法:elements(),most_common(),subtract()element()most_common()subtract()update()Counter对象类似于字典,如果某个项缺失,会返回0,而不是报出KeyError删除双向队列(deque)append(x)clear()count(x)extend(iterable)pop()remove(value)rev原创 2020-11-20 16:08:59 · 841 阅读 · 1 评论 -
pip安装第三方库报错
问题:解决:在安装命令后面加上一个国内镜像就能解决,以豆瓣为例:pip install -i http://mirrors.aliyun.com/pypi/simple json原创 2020-11-20 10:20:10 · 270 阅读 · 0 评论 -
一摞python风格的纸牌
import collections# 构建简单的类表示一张纸牌Card = collections.namedtuple('Card',['rank','suit'])class FrenchDeck: ranks = [str(n) for n in range(2,11)] + list('JQKA') suits = 'spades diamonds clubs hearts'.split() def __init__(self): self._car原创 2020-11-18 10:15:52 · 188 阅读 · 0 评论 -
python 定时执行代码
import scheduleimport timedef job(): print("I'm working...")schedule.every(10).seconds.do(job) # 每10秒执行一次schedule.every(10).minutes.do(job) # 每10分钟执行一次schedule.every().hour.do(job) # 每小时执行一...原创 2019-12-02 10:41:58 · 597 阅读 · 0 评论 -
centos7安装pip3
1、安装 epel-release扩展yum源# yum install -y epel-release# yum clean all# yum makecache2、安装setuptools# yum install -y python34-setuptools3、安装pip3# easy_install-3.4 pip原创 2019-11-15 16:56:33 · 169 阅读 · 0 评论 -
Python求多个list的交集、并集、差(补)集的方法
1.交集"""以a、b、c为实验对象,求a、b、c都同时拥有的元素"""a = [0,1,2,3,4]b = [0,2,6]c = [-1,2,5,8]r = list(set(a).intersection(b,c)) # 求多个list的交集:a、b、c同时拥有的元素print('r -->', r) # 输出r --> [2]2.并集"""以a、b、c为实验...转载 2019-09-20 11:24:10 · 12999 阅读 · 0 评论 -
python文件打包
安装pyinstaller库直接打包成一个文件: pyinstaller -F order2container.py打包成带版本号的文件:pyinstaller -F --version-file order2container_version.txt order2container.py其中版本信息的模板文件可以通过pyi-grab_version命令获取pyi-grab...原创 2019-08-29 11:21:58 · 133 阅读 · 0 评论 -
python除pip加载包之外的手动加载包方法
首先下载我们需要的包,下载网址为http://www.lfd.uci.edu/~gohlke/pythonlibs/包很多,所以直接ctrl+F搜索关键字找到我们所需要的包,因为我的电脑是64位的,python是3.5版本的,所以我下的包是这个然后在控制台输入指令进入包存放的文件夹最后使用pip install +下载包的全名(注意一定要复制全名)即可安装成功...原创 2019-08-19 18:15:04 · 881 阅读 · 0 评论 -
python函数参数前面单星号(*)和双星号(**)的区别
这两种用法其实都是用来将任意个数的参数导入到python函数中。单星号(*):*agrs将所以参数以元组(tuple)的形式导入:def foo(param1, *param2): print param1 print param2--------------------------------------foo(1,2,3,4,5)1(2, 3, 4, 5)双星号(*...原创 2019-08-04 10:26:09 · 237 阅读 · 0 评论 -
使python2 python3兼容
使python2 python3的print互相兼容:from __future__ import print_function原创 2019-04-09 08:17:32 · 275 阅读 · 0 评论