Python与算法
神芷迦蓝寺
神芷迦蓝寺,江楼月美人
展开
-
日增进:python性能分析工具line_profiler
高端的程序员不仅关注实现它,更关注如何在最小成本下快速有效的实现它原创 2022-09-22 14:57:51 · 443 阅读 · 0 评论 -
基于PG-Oracle和MySQL的三库通用sql代码开发
一个SQL,多库通用原创 2022-07-26 18:31:02 · 728 阅读 · 2 评论 -
定点一键查询GUI编程的设计与开发
背景前几天一朋友问我怎么能定点查询数据并格式化输出,因为在百度上查出来的广告和链接居多,有用的信息需要手动筛选,比较麻烦。本质上他这个需求其实运用更多的是爬虫,即从百度上定点查询数据,并以结构化形式呈现。居于此,我想到了之前在git上看到的百度蛛(BaiduSpider)开源项目,想着可以使用它为核心来开发,鉴于朋友的IT技术能力不那么好,便再结合python的GUI编程Tkinter来给他包一层,直接给他一个exe可执行文件在电脑上,打开运行方便查询和数据粘贴,Demo样例图如下开发百原创 2022-01-25 15:06:23 · 919 阅读 · 1 评论 -
实战|python消费rabbitMQ
必须的包为pika,话不多说,上代码#!/usr/bin/env python# -*- encoding: utf-8 -*-"""@File : CosumerMQ.py@Contact : dtboys507@163.com@License : (C)Copyright 1997-2021, XXXXXXXXXXXXX CO.,LTD.@Modify Time @Author @Version @Desciption------------原创 2021-01-15 17:02:08 · 1485 阅读 · 0 评论 -
python依据excel里的实际内容进行获取时间并改写到文件名
背景: 有一批名字时间错乱的excel文件,需要根据文件里的实际时间对文件进行改名样例如下闲话不扯,直接上脚本import osimport pandas as pdimport time# 获取桌面上的etc文件夹path = os.path.join(os.path.expanduser('~'),"Desktop") + "\\etc"dirs = os.listdir(path)#遍历文件改名for file in dirs: file_ = os.pat原创 2020-09-24 17:38:14 · 416 阅读 · 0 评论 -
python时间模块的相关转换与计算
字符串转时间假如某两个字符串是str1 = '2020-01-01 00:01:01'str2 = 20200101000101要把字符串转化为时间import time原创 2020-08-06 15:44:18 · 335 阅读 · 0 评论 -
dataocean平台用继承spark的python脚本来实现抓取es数据到hive
在大数据生态里,ES作为一个极致搜索平台,可依据json格式快速在线查询过滤以及修改数据,由于json数据是半结构化数据,所以从hive数仓数据交换到es很简单,但是从es交换到hive就需要对应字段切分,现在基本上使用的都是scala,java来实现,虽然这些语言是多线程的,也能实现很多功能需求,但同样的开发难度和维护难度也上去了。你需要配置环境,比如连接es的,数据导入hive的,这些常用maven来实现阿里云这些还好,可以在网上下载相关包,但是对于一些定制化的大数据平台,你只能离线配置相关原创 2020-07-07 18:33:15 · 492 阅读 · 0 评论 -
python pip使用国内镜像进行在线或离线下载安装第三方库
比如下载sqlalchemypip install -i https://pypi.tuna.tsinghua.edu.cn/simple sqlalchemy如果想指定版本,可以直接=版本号pip install -i https://pypi.tuna.tsinghua.edu.cn/simple sqlalchemy=2.0.1推荐这个清华镜像网站,真的很全清华大学全镜像网站...原创 2020-06-18 17:03:56 · 5285 阅读 · 0 评论 -
python读取数据库数据乱码
在连接数据库时加入charset="utf8" 这个字符集与数据库保持一致比如MySQL原创 2020-06-18 16:58:09 · 426 阅读 · 0 评论 -
python如何替换固定序列的字符
比如我们要把一个手机号12345678901 替换为 123****8901mob1 = '12345678901',(要注意一点整型无法做序列,需要把整型str变成字符)第一步我们先把这个字符列表化num1 = list(str(num1))这时候num1变成一个列表['1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '1']第二步我们把第四个元素和第七个元素变成*num1[3:7] = '****'这时候num1的值已变换['原创 2020-06-15 16:04:31 · 669 阅读 · 0 评论 -
如何通过一个url链接下载文件到指定位置
假如一个url是http://xx.xx.xx.xx:0000/test/?path=/test/test/test.txtLinux系统可以使用curl命令curl -O url因此也可以在其他语言比如python,java里调用linux系统运行curl浏览器可直接放在搜索框,浏览器自带下载链接会下载 python里可以用requests包import requestsimport oslocat = "/test/test/test.txt"url = "http:/原创 2020-05-26 11:38:07 · 2582 阅读 · 0 评论 -
python常用的模块开发脚本
神芷迦蓝寺,江楼月美人原创 2020-05-18 15:32:03 · 7763 阅读 · 24 评论 -
python如何把字符串转变成list列表
在实际应用中,我们经常会遇到字符串类型互相转换为列表的需求,列表转字符串很简单,直接在前面加一个str强转即可但对于字符串呢,比如["cat","dog","duck"],这是一个字符串,但其实是列表类型,不像元组字典那般可以直接转,如果我们直接在前面加list,他会把每个字符都转变为列表元素很显然这不是我们想要的结果,我们想要的结果是一个list,包含cat,dog,duck的list这个时候突然想起来字符串的一个方法split,他会把字符进行切割并把切出来的部分变成列表形式存储所以我原创 2020-05-13 14:44:54 · 33192 阅读 · 1 评论 -
用python 来实现经纬度的测算与输出
本文采用高德地图地理标识规范首先导入两个分析包,math和pandas,如果有需要还有numpy,mathplotlib等常用数据分析包import pandas as pdimport math测算一经度和一纬度的距离# 地球半径r = 12713.504 / 2# 1纬度长wd = (2 * math.pi * r) / 180# 1经度长jd = (5 * ...原创 2019-11-27 17:27:44 · 1422 阅读 · 0 评论 -
python mysql的游标数据解读
一般我们import 数据库连接包,然后开始运行sql,获取返回值from pymysql import connectdef exeCount(server,user,password,station,sql): conn = connect(server,user,password,station) cursor = conn.cursor() ...原创 2019-11-07 16:17:23 · 399 阅读 · 0 评论 -
pandas如何取某一值的序列
通过df.loc 与内置函数index来做,并通过tolist变成列表import pandas as pd df = pd.read_csv('RFM_TRAD_FLOW.csv',encoding = 'gbk')df.loc[df['transID'] == 11837].index.tolist()原创 2019-11-07 15:53:06 · 1409 阅读 · 0 评论 -
一个牛逼的python离线包下载网站
一般情况下,我们安装需要的python模块,直接在线pip就可以了,比如安装pymssqlpip install pymssql但如果无法联网,比如内网环境,就需要离线手动安装了请记住这个牛逼的离线包下载网站,可以说是安装包界的小叮当了,一应俱全python离线模块百宝箱进入网站搜索到需要的安装包并下载,然后打开终端离线安装即可,比如pymsssqlpip in...原创 2019-11-04 09:47:00 · 1286 阅读 · 1 评论 -
干货 | pandas常用技巧笔记
下面以代码+注释的形式进行记录# 为模块添加别名import pandas as pd# 创建DataFramedf = pd.read_csv('RFM_TRAD_FLOW.csv',encoding = 'gbk')df = pd.DataFrame(columns = ['transID', 'cumid', 'time', 'amount', 'type_label', '...原创 2019-10-31 16:11:06 · 474 阅读 · 0 评论 -
用python开发Ping的脚本程序
这里只写程序接口,需要哪些IP,可以自己填入字典数据,或者用pandas,numpy等组合数据来进行批量的Ping测试import reimport subprocessdef run_ping(str_ip): ftp_res = subprocess.Popen('ping %s -n 3' % str_ip,stdin=subprocess.PIPE,stdout=su...原创 2019-10-31 10:25:17 · 1400 阅读 · 0 评论 -
python常用代码的日常笔记(连续ing)
1.判断文件是否存在,存在就删除,不存在就创建等import os# 文件夹path = 'D:\\result'if not os.path.exists(path): os.makedirs(path)file = 'D:\\result\\res.txt'if os.path.exists(file): print ("file have been ex...原创 2019-10-31 10:07:14 · 151 阅读 · 0 评论 -
pandas读写excel等文件的相关笔记
pandas是一个很牛逼的读写excel,csv等文件的模块,这里必须要夸赞一下,很强大,很实用读什么类型就用什么方法,比如csv就用read_csv,excel就用read_excel下面注重以excel为例记录相关笔记1.取出所有sheet页名字import pandas as pd# 因为pandas默认读取第一个sheet页,所以必须指定None# df.keys(...原创 2019-10-31 09:44:23 · 417 阅读 · 0 评论 -
无IIS的情况下如何用python在windows系统建立ftp服务器
windows系统之间文件互传方法有很多,比如建立共享文件夹,ftp服务器以及各种各样的ETL工具(如winscp,向日葵等),但这里的大部分都是基于windows系统里的IIS(信息服务)来完成,如果我们装的系统是纯净版,那么可能就会不存在,无法搭建FTP,后面的ETL工具也不行, 造成文件传输的不可能性其实ftp只需要网络联通即可搭建,这里我们使用python来实现首先在python里...原创 2019-10-14 09:40:51 · 361 阅读 · 0 评论 -
如何简单地理解Python中的if __name__ == '__main__'
见Locutus的https://blog.csdn.net/yjk13703623757/article/details/77918633写的很棒,很透彻,强推转载 2019-08-19 18:06:52 · 139 阅读 · 0 评论 -
python如何调用其他应用程序
使用os包的startfile# -*- coding: UTF-8 -*-########################################################################### SCRIPT_NAME : easystation.py# CREATE_TIME : 2019/08/19# AUTHOR ...原创 2019-08-19 18:03:47 · 5865 阅读 · 0 评论 -
Django入门基础:安装 + 模型
1.简介Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。它是一个开放源代码的Web应用框架,由Python写成。Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 。采用了MVC的软件设计模式,即模型M,视图V和控制器C。2.安装python安装:安装之前...原创 2019-07-18 09:29:35 · 289 阅读 · 0 评论 -
pandas数据处理里最好用的函数apply+lambda
apply(func [, args [, kwargs ]]) 函数用于当函数参数已经存在于一个元组或字典中时,间接地调用函数。args是一个包含将要提供给函数的按位置传递的参数的元组。如果省略了args,任 何参数都不会被传递,kwargs是一个包含关键字参数的字典。简单说apply()的返回值就是func()的返回值,apply()的元素参数是有序的,元素的顺序必须和func()形式参数的顺...原创 2019-07-10 11:59:10 · 35782 阅读 · 10 评论 -
Django入门基础:基于MySQL数据库的安装+连接+操作
4.数据库4.1.安装数据库,推荐轻量型,查询快的MySQL,MySQL安装我之前有介绍过离线安装,如果联网的方便的话可以试下在线安装需要注意的是一般linux系统自带的服务都是MySql5.5以下的,但是Django2.1之后只支持MySql5.6及以上,不然会报错:django.db.migrations.exceptions.MigrationSchemaMissing: Unab...原创 2019-07-18 09:30:00 · 438 阅读 · 0 评论 -
python for/else循环——求一百以内的质数
pythonfor循环是我们经常使用的一种循环方式,但是与普通if判断不同的是,for循环里有一个特殊的else子句,即循环时没有遇到break,则else会输出(while也是这样)拿实际应用,求一百以内的质数来举例质数我们都知道是除了它本身和1之外没有其他因子,所以这里我们可以用for / else搭配 if / break来做,中心思想就是只要这个数里有一个非自身非1的因子就br...原创 2019-04-07 18:46:24 · 11953 阅读 · 11 评论 -
算法:召回率,精准率等数据处理概念说明
原创 2018-04-16 16:26:59 · 2078 阅读 · 2 评论 -
Python基础——Numpy:用随机函数包解读三门问题
背景介绍:三门问题:假设你参加一个电视游戏节目,节目现场有三扇门,其中一扇门后面是一辆车,另外两扇门后面则是山羊。主持人让你选择其中的一扇门。不妨假设你选择了一号门吧。主持人故意打开了另外一扇门,比如说三号门,让你看见三号门的后面是山羊。然后主持人问你,“你想改变你的选择,换成二号门吗?”这时候,你会怎么做?接下来我们通过numpy的介绍来解读这一问题选择1.什么是Numpy作为pytho...原创 2018-12-04 09:48:24 · 674 阅读 · 0 评论 -
Python基础——基础入门知识点
基础常识1.Python中,单引号,双引号,三引号包围的都是字符串,转义和引号前加r可以表示原始输出2.python基本数据结构列表(list)是python内置的一种数据类型,是一种有序的集合,可以用[]来创建,也可以用list()函数append是常用在循环里的一种往列表里加元素的方法extend是两个列表合并在一个列表里元组(tuple)与列表类似,区别在于列表可...原创 2018-11-29 10:21:57 · 7661 阅读 · 21 评论 -
python 判断字符是否含有数字
# 导入re包import re# 匹配字符串中是否含有数字,含有字母的话是[a-z]pattern = re.compile('[0-9]+')# findall是返回所有符合匹配的项,返回形式为数组match = pattern.findall(station)# if后加变量的意思是判断变量是否为空,不为空则为true,反之为falseif match: print...原创 2019-08-20 14:41:41 · 5292 阅读 · 0 评论 -
python对斐波那契数列的实现
斐波那契数列(Fibonacci sequence),因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……即从第3项开始,每一项都等于前两项之和。该数列有通项公式也有递归思想,这里我们用python分两种不同方式来实现import math# 通项公...原创 2019-09-04 17:25:21 · 446 阅读 · 0 评论 -
规范化脚本:python的异常处理
写好一个脚本,异常处理非常重要,否则会因为文件权限,网络问题等一系列不稳定因素造成脚本或应用的失败,为了在实际项目生产中使脚本稳定,可持续化,我们需要使用异常处理python的异常处理主要是下面这个框架try - excepttry: <语句> #运行代码except <异常类型>: <语句> #如果在...原创 2019-10-09 09:56:18 · 430 阅读 · 0 评论 -
python http协议传输文件的接口形式:POST {url:port}
http协议是常用的网络传输协议,只要给出一个网络接口即可可以在浏览器窗口那里测试网上是否通 url:port在python里,可以使用requests包来实现继续在代码里分享import requests'''目录类型Content-Type分为四种application/x-www-form-urlencoded(这也是默认格式)、application/jso...原创 2019-09-20 16:32:38 · 1875 阅读 · 0 评论 -
python判断文件文件夹是否存在并创建
方式还是有挺多的,这里采取最为简单的os包import osimport codecs# 判断文件夹是否存在,不存在则创建dirs1 = 'D:\\history' if not os.path.exists(dirs1): os.makedirs(dirs1)# 判断文件是否存在,不存在则创建file1 = 'D:\\conf.ini'if not os.path...原创 2019-09-20 16:00:51 · 9541 阅读 · 0 评论 -
tkinter 中button按钮如何实现绑定enter以及按键点击共存
xxx.bind("<Return>", def)即可绑定enter键,不过这里的def函数必须要加self,而点击命令中无需加self因此可以在创建一个函数之后,另外再创建一个调用函数的函数加self即可样例如下:def test(): passdef test_fun(self): test()text1 = Entry(input_word)...原创 2019-09-11 09:42:10 · 13339 阅读 · 2 评论 -
python如何读写字典到文件
python一般保存文本文件只能保存str字符,那么我们如何来读写字典呢?两种方法:一种是曲线救国,即把字典里的元素一个个的扣出来写到文件里第二种通过json包来做,代码如下:import codecsimport json# 获取当前时间并格式化来区分命名文件date1 = time.strftime("%Y%m%d", time.localtime()) file1 =...原创 2019-09-18 15:30:13 · 5167 阅读 · 1 评论 -
python Tkinter实践:输入站码输出信息
在工作过程中发现站码,车道,联系人,IP等信息都是在excel,数据库或者纸质保存,且数据各为孤岛,查询起来不太方便,因此我用python字典结合tkinter开发出一个小脚本,后面又用pyinstaller 转换成exe程序(博文在此),这样一来就可以方便快捷的一键查询了闲话少说,代码如下# -*- coding: UTF-8 -*-#########################...原创 2019-09-10 17:23:32 · 4622 阅读 · 1 评论 -
如何把python脚本转成window系统支持的exe可执行文件
把python脚本转换成exe可执行文件的好处有:方便迁移,无需再另外安装python环境等 运行环境简单,不受语言版本,目录位置等影响 不开放源代码,保障了代码的安全性 运行简单,像windows程序一样,双击即可闲话少说,开始正文我们需要另外下载一个pyinstaller包,推荐用anaconda自带的python,这样直接pip install pyinstaller 即可...原创 2019-09-10 16:49:40 · 477 阅读 · 0 评论