Python
Quincy379
坚持、冷静
展开
-
Python调用Java的jar包方式
其实调用 Java 的 jar 包代码,和其他外部程序一样,可以使用 Python 的 subprocess 模块或者需要调用 Java 的 API(比如 Jython)来实现。这里假设你已经安装好了 Jython。需要注意的是,这种方式需要在 Jython 中编写代码,而不是 Python,因为 Jython 是一种 Python 解释器,它能够解析 Java 代码。原创 2023-04-01 21:46:40 · 1624 阅读 · 0 评论 -
Python之手机ua
手机UA原创 2022-06-08 15:48:19 · 896 阅读 · 0 评论 -
Python3之win平台批量解压zip代码实现
import osimport zipfilefrom pathlib import Pathdef unzip_f(p_file, path): """ 解压文件 :param p_file: 要解压的zip文件 :param path: 将文件解压到的路径 :return: """ zip_file = zipfile.ZipFile(p_file) zip_list = zip_file.namelist() for f原创 2021-07-23 08:42:25 · 319 阅读 · 0 评论 -
Zabbix数据Python处理简单实现
# coding=utf-8import osimport timeimport pymysqlconn = pymysql.connect(host='localhost', user='root', password='',port=13306, database='zabbix', read_timeout=60,write_timeout=60)cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)sql0 = 'select i原创 2021-07-16 15:54:56 · 367 阅读 · 0 评论 -
Python之selenium爬取考题代码并写入excel实践
import timeimport xlwtfrom selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support import expected_conditions as ECfrom selenium.webdriver.support.ui import WebDriverWait as wwaitbrowser = webdriver.Chrom原创 2021-03-30 10:41:43 · 496 阅读 · 1 评论 -
Python3之处理null值
def handle_none(origin): """ 处理None值 :param origin: :return: """ if type(origin) == dict: result = json.dumps(origin).replace("null", '""') rst = json.loads(result) return rst result = origin.replace("nu原创 2021-01-12 17:10:28 · 2747 阅读 · 0 评论 -
Python3之NPM数据处理
需求:将下面的npm数据进行处理,数据发送1分钟一个点,有时5分钟内会有6个点数据,有时候是5个点数据,统计5分钟内数据的和(只需要5个点的和),有6个点数据需要剔除一个,剔除原则是最开始1个点数据需要剔除。{"a1": {"1606201860": 0, "1606201800": 0, "1606201740": 0, "1606202040": 0, "1606201980": 200.53333333333333}, "a2": {"1606201920": 85275.06666666667,原创 2020-11-25 17:19:28 · 484 阅读 · 0 评论 -
Python3之判断拿到的时间和当前时间是否相差5分钟
def time_format(alarm_details): fmt_pattern = "%Y-%m-%d %H:%M:%S" # 当前的时间 current_date = (datetime.datetime.now() - datetime.timedelta(minutes=5)).strftime(fmt_pattern) # 获取的时间 target_date = time.strftime(fmt_pattern, time.localtime(ala原创 2020-11-25 13:26:07 · 2428 阅读 · 0 评论 -
sublime3之内网安装python插件Anaconda操作步骤
重要思路:如果不知道内网sublime3怎么安装python插件Anaconda,就直接在外网安装一遍,然后把外网解压的插件直接复制到内网对应的文件夹下即可一般来说,C:\Users\Quincy\AppData\Roaming\Sublime Text 3\Packages这个路径是安装第三方插件的路径,如果找不到就直接使用sublime界面:点击菜单栏preferences->Browse Packages,就会出现上述路径。将Anaconda文件夹直接拷到内网对应的文件夹下即可,Case原创 2020-10-26 16:41:04 · 492 阅读 · 0 评论 -
Python3之selenium实践道云配置修改自动化代码实现
from selenium import webdriverfrom selenium.common.exceptions import NoSuchElementExceptionfrom selenium.webdriver.common.keys import Keysimport timeimport rebrowser = webdriver.Chrome()# 代码不起作用需要找到与浏览器对应的chromedriver版本browser.maximize_window()brow原创 2020-10-26 08:51:43 · 364 阅读 · 0 评论 -
Windows服务器之Python脚本后台运行
Python脚本写完后执行会跳出一个黑框,如何让脚本在后台执行呢?经查询得知可以直接更改脚本后缀,把后缀.py改成.pyw,这样双击执行就可以了。这个可以从Windows文件类型展示出来:原创 2020-10-10 13:40:34 · 1298 阅读 · 0 评论 -
Python2/3之kafka模块 Value must be bytes报错处理
解决方案:在要发到kafka的数据后添加encode(“utf-8”),亲测有效!producer.send(‘my-topic’, json.dumps(msg).encode(‘utf-8’))参考链接:https://stackoverflow.com/questions/41146144/how-to-fix-assertionerror-value-must-be-bytes-error-in-python2-7-with-apache/41146274...原创 2020-09-23 17:04:23 · 1416 阅读 · 0 评论 -
Python之处理Win路径解决方案
#! /usr/bin/python# coding: utf-8import oswin_path = "C:\python"filename = "beautifulgirl.txt"whole_path = os.path.join(win_path, filename)#print whole_pathrst = win_path.split("\\")path = rst[0] + os.sep + rst[1] + os.sep + filename#print pathp原创 2020-07-27 09:54:23 · 509 阅读 · 0 评论 -
Python之使用xlwt模块将多行多列数据循环写入excel文档
代码如下:#!/usr/bin/python# -*- coding: utf-8 -*-import xlwtimport redef host_regex(dataline): host_regex = r"<host>(.*?)</host>" host = re.findall(host_regex, dataline) if host: return host[0]def ip_regex(dataline):原创 2020-05-18 10:39:33 · 6801 阅读 · 0 评论 -
Unicode equal comparison failed to convert both arguments to Unicode - interpreting
解决方案:import sysreload(sys)sys.setdefaultencoding(‘utf8’)https://blog.csdn.net/kr2563/article/details/84594789?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearn...原创 2020-04-15 18:26:35 · 322 阅读 · 0 评论 -
Python3之将打包好的exe注册成后台服务启动
首先要将py程序打包成.exe文件(点击进入):Python3之使用pyinstaller打包.py文件成exe可执行文件其次下载注册微软注册服务的两个软件:https://www.lanzous.com/i7qe5yb再次将两个exe文件放到同一个文件夹打开dos窗口:效果如图,这说明服务已经注册好了!!!!autodetect是服务名,自己定义就可以了。再次找到注册表HKEY_L...原创 2019-11-29 16:03:32 · 1610 阅读 · 0 评论 -
Python中is和==的区别
Python中对象三要素:id,type,value==:比较的是2个对象的valueis:比较的是A对象是否就是B对象,也就是比较id原创 2017-07-15 15:49:36 · 322 阅读 · 0 评论 -
Python之面试题
def extendList(val, list=[]): list.append(val) return listlist1 = extendList(10)list2 = extendList(123, [])list3 = extendList('a')print(list1)print(list2)print(list3)[10, 'a'][123]原创 2017-08-08 08:31:52 · 393 阅读 · 0 评论 -
Python之验证码面试题
import randomret = ''for i in range(4): num = str(random.randint(0, 9)) alpha = chr(random.randint(65, 90)) alpha_c = chr(random.randint(97, 122)) rc = random.choice([num, alpha, al原创 2017-08-08 11:08:04 · 336 阅读 · 0 评论 -
Python之文件读写报错解析
原创 2017-07-24 20:15:30 · 367 阅读 · 0 评论 -
Python3之实现单例模式
当实例化一个对象时,会经历过两个阶段,触发2个内置函数的运行:1.当开始实例化时首先触发__new__的运行,得到一个实例,而此时的实例什么属性都没有,就像上帝造了一个人,但是这个人光溜溜的,想给这个人穿衣服,就要经历下一个阶段。2.接着上回,这个阶段会触发__init__的运行,在这个阶段就会给这个光溜溜的人把衣服穿上,也就是把对象的属性值给对象属性附上。上图可以用Python实现Java中的单例原创 2017-08-16 15:15:17 · 779 阅读 · 0 评论 -
Python之生成器妙用
# 阶段一:递归找文件路径,把路径发给阶段二import osdef init(func): def wrapper(*args, **kwargs): res = func(*args, **kwargs) res.__next__() return res return wrapper@initdef get_fil原创 2017-08-02 15:28:56 · 601 阅读 · 0 评论 -
Python3之元类
元类是类的类,它可以控制类的行为,也可以控制对象的初始化过程type(元类)—>类—>对象这个栗子可以让我们清晰的认识到类的实例化过程。 纠正错误:自定义元类中的__init__方法,缺少2个参数,正确的形式为:def __init__(self,cls_name,bases,cls_dict),为什么呢,type类实例时需要4个参数:当我们创建类Foo并制定元类为自定义Mymeta时,就会调用_原创 2017-08-16 16:51:25 · 311 阅读 · 0 评论 -
Python3之异常处理
1.异常处理语法: try: 可能抛出异常的代码块0 #0抛出异常,1-5不会执行 可能抛出异常的代码块1 可能抛出异常的代码块2 可能抛出异常的代码块3 可能抛出异常的代码块4 可能抛出异常的代码块5 except ValueError as e1: #异常出现后代码执行 pass except KeyError as e原创 2017-08-12 16:11:36 · 490 阅读 · 0 评论 -
Python 字符串拼接、逻辑连接符
1.字符串拼接:用+、*拼接2.列表也可以用+、*拼接原因在于都有序并且通过索引查找,而字典是无序的,所以不可以拼接3.优先级:网上有些错误的认识,以为not>or>and,官方的解释是这样的:These are the Boolean operations ,ordered by ascending priority 。官方标准库里的解释. 所以正确的原创 2017-07-18 19:30:28 · 1741 阅读 · 0 评论 -
Python3之hashlib模块
import hashlib md5中可有参数但是也需要encode,这个参数俗称加盐 m = hashlib.md5()m.update(‘qaz‘.encode(‘utf-8’)) m.update(‘wsx‘.encode(‘utf-8’)) &&两次update的值(累加的效果)和这次: &&m.update(‘qazwsx‘.encode(‘utf-8’))的值是一样的 pri原创 2017-08-17 15:09:56 · 3807 阅读 · 0 评论 -
新式类与经典类的继承关系
1.概念: 新式类: 经典类:2.新式类继承关系:新式类继承关系:A->B->E->C->D,这种情况和经典类一样的顺序这种继承关系和经典类不同:A->B->C->D->E这种继承关系遵循广度优先,可以调用A.mro()内置函数查看新式类的继承关系3.经典类继承关系: 经典类继承关系:A->B->E->C->D 遵循深度优先,没有A.mro()方法。原创 2017-08-10 18:16:53 · 532 阅读 · 0 评论 -
Python3之super关键字
想要调用父类的方法,可以使用super().父类方法即可,实现原理主要是根据内置方法mro获得的列表挨个去查找父类的方法,在多继承中表现明显原创 2017-08-10 18:46:56 · 254 阅读 · 0 评论 -
Python3 之封装
此种封装在类内部可以被调用,但是外部不能被调用,因为带__的变量名会在类定义阶段变形,外部调用失效封装的另一个例子,根据这个例子主要学到了2点: 1.__变量名/函数名会自动变形,将类中的变量名/函数名保护起来 2.对象调用的属性都要根据mro列表先从自己这找,找不到然后去父类一层层查找原创 2017-08-10 19:40:54 · 1022 阅读 · 0 评论 -
Python3之窗体程序
使用模块:PyQt5(第三方模块) tkinter(内置)原创 2017-08-18 11:28:19 · 2876 阅读 · 0 评论 -
Python3之super关键字
super()调用的父类的方法,原理是根据MRO列表从开始去查找对象【super()】的属性,找到符合的属性后则停止查找如果想调用多个类同一个方法,则要通过类名.函数名的方式去实现原创 2017-08-11 16:37:17 · 487 阅读 · 0 评论 -
Python之lambda匿名函数及map用法
现有两个元组(('a'),('b')),(('c'),('d')),请使用python中匿名函数生成列表[{'a':'c'},{'b':'d'}]t1 = (('a'), ('c'))t2 = (('b'), ('d'))print(list(map(lambda t: {t[0]: t[1]}, zip(t1, t2))))l = lambda t1, t2: [{i: j}原创 2017-08-04 15:17:42 · 910 阅读 · 0 评论 -
Python3之文件操作
1.主要常用的文件操作模式:r:读模式(默认) 文件存在则直接读取文件内容,不存在则报错w:写模式 文件存在则覆盖原内容写入新内容,文件不存在则创建文件并将内容写入a:追加模式 文件存在则追加原内容写入新内容,文件不存在则创建文件并将内容写入rb:读字节模式wb:写字节模式ab:追加字节模式2.常用的方法:2.1 f.read(参数):参数代表字符,一次读几个字符。 2.2 f.s原创 2017-08-19 11:05:38 · 556 阅读 · 0 评论 -
Python3之递归应用
1.三级菜单menu = { '北京': { '海淀': { '五道口': { 'soho': {}, '网易': {}, 'google': {} }, '中关村': {原创 2017-08-01 10:05:47 · 495 阅读 · 0 评论 -
Python3之面向对象
Python的继承居然可以多继承,这和Java的继承有很大区别,Java的继承是单继承的,但可以通过其他方式实现多继承类的属性:数据属性和函数属性在Python中一切皆对象,即类便是类型在Python3中一切类及其子类默认继承object类,被称为新式类 而在python2中一切非继承object的类及其子类被称为经典类定义类时便在内存中创建新的名称空间,将所有变量名及函数名及名字与值的绑定关系加原创 2017-08-10 15:55:45 · 270 阅读 · 0 评论 -
Python之递归
1.递归调用:在调用函数过程中,直接或者间接的调用了该函数本身2.递归的特点:2.1.递归效率太低2.2.必须有一个明确的结束条件2.3.每次进入更深一层递归时,问题规模相比上次递归都应有所减少原创 2017-07-31 18:58:29 · 239 阅读 · 0 评论 -
Python之模块调用
1.模块调用:import 模块名 1.1.开辟新的内存空间1.2.被调用的模块内容会被执行一次2.模块命名:import 模块名 as 别名别名是一个新的引用指向内存空间3.from 模块名 import 变量名变量名可以作为全局变量被使用4.from 模块名 import * * 和__all__=['变量名1','变量名2']连原创 2017-08-09 15:48:48 · 475 阅读 · 0 评论 -
Python学习之常用模块
1.常用模块:点击打开链接原创 2017-08-08 16:14:04 · 246 阅读 · 0 评论 -
Python之collections模块
from collections import Counter,deque,defaultdict,namedtuple,OrderedDictCounter计数器,会对字符串中的元素进行计数,例如:from collections import Counterc = Counter('asdfghjkl')print(c)更多用法:http://www.cnblogs原创 2017-08-07 17:31:44 · 237 阅读 · 0 评论 -
Python之re模块二
1.re模块中常用的方法:re.findall(pattern,str)该方法可以匹配str中所有符合pattern的子串返回列表类型,如果pattern中有分组则优先显示分组PS:一般元字符"|"与分组联合使用,形如(a|b) re.search(pattern,str)该方法可以匹配str中第一个符合pattern的子串,如果要拿到数据则要调用.group(原创 2017-08-07 16:28:26 · 363 阅读 · 0 评论