python
python 相关
蓝色的simon
唯有美食与爱不可辜负
展开
-
Pycharm 自定义文件和代码模板
【代码】Pycharm 自定义文件和代码模板。原创 2022-09-08 19:58:17 · 251 阅读 · 0 评论 -
01背包问题
背包问题原创 2022-07-12 15:32:15 · 109 阅读 · 0 评论 -
进程池提升效率
执行以下计算逻辑,阻塞,同步执行,发现特别慢,进行优化一下使用进程池,并发执行任务,速度直接提升2倍不止(服务器配置越高,处理速度越快)查看当前机器的cpu核数原创 2022-07-07 19:43:32 · 208 阅读 · 0 评论 -
跳过休息日(周末和节假日)
使用pandas计算一定日期内工作日的天数,周末天数,遇到周末向后延长对应天数例如'2022-06-2’到’2022-06-04’之间有一天不是工作日实例输出结果日期计算跳过休息日(包含周末和节假日)使用pandas 自定义节假日规则,补班规则,一定日期内遇到节假日或者周末延后对应天数例如 到 中间有 天休息日;而且10月8日(星期六)、10月9日(星期日)上班实例输出结果输出结果将,额外的工作日也计算进去了,跳过n天休息日,增加n天工作日...原创 2022-07-05 17:35:36 · 2287 阅读 · 0 评论 -
Django ORM QuerySet extra()方法 自定义排序
借助extra()方法使用sql语句对结果重新排序pk_list是按照指定条件、自定义序列过滤出来的主键可以使用函数排列成我们想要的顺序降序第二种方法升序降序同理方法一的查询速度更快一下原创 2022-06-27 10:14:32 · 1378 阅读 · 0 评论 -
python链表(代码)
单链表、单向循环链表,双向循环链表原创 2022-06-13 18:50:15 · 430 阅读 · 0 评论 -
一个列表让你搞懂浅拷贝深拷贝
浅层与深层复制的区别仅与复合对象(即包含列表或类的实例等其他对象的对象)相关:浅层复制 构造一个新的复合对象,然后(在尽可能的范围内)将原始对象中找到的对象的 引用 插入其中。深层复制 构造一个新的复合对象,然后,递归地将在原始对象里找到的对象的 副本 插入其中。深度复制操作通常存在两个问题, 而浅层复制操作并不存在这些问题:递归对象 (直接或间接包含对自身引用的复合对象) 可能会导致递归循环。由于深层复制会复制所有内容,因此可能会过多复制(例如本应该在副本之间共享的数据)。展开讲讲浅层与深层复制的原创 2022-06-10 18:15:45 · 132 阅读 · 0 评论 -
排列组合(python combinations函数)
当 n = 1 的时候 有1种组合 [1] 当 n = 2 的时候 有3种组合 [1] [2] [1, 2] 当 n = 3 的时候 有7种组合 [1] [2] [3] [1, 2] [1, 3] [1, 2, 3] [2, 3]原创 2022-06-09 18:32:52 · 2102 阅读 · 0 评论 -
922. 按奇偶排序数组 II
来源:力扣(LeetCode)链接:https://leetcode.cn/problems/sort-array-by-parity-ii题目给定一个非负整数数组 nums, nums 中一半整数是 奇数 ,一半整数是 偶数 。对数组进行排序,以便当 nums[i] 为奇数时,i 也是 奇数 ;当 nums[i] 为偶数时, i 也是 偶数 。你可以返回 任何满足上述条件的数组作为答案 。示例 1: 输入:nums =原创 2022-05-09 15:59:25 · 316 阅读 · 0 评论 -
python中使用下划线命名的规则
链接:https://www.nowcoder.com/questionTerminal/1c4b55a530ee499c986efe82c173b645python中使用下划线命名的规则:example:前后无下划线表示该变量、函数、成员或方法公有,可以以任何形式访问。_example:前置单下划线表示该内容受保护。如果是变量或者函数,在from some_module import *这种情况下,不会被导入。如果是成员或者方法,仅允许类内部使用及该类的子类继承。__exampl原创 2022-05-09 10:42:49 · 411 阅读 · 0 评论 -
python随机字符串
随机字符串的简单实现方式string文档地址random文档地址使用 string 包中的 ascii_letters,26个英文字母大小写和 digits数字0~9组成测试数据import stringimport random# 字符串data = string.ascii_letters+string.digits# 随机长度k (1<= k <=32)random_length = random.randint(1, 32)random_string = ''.joi原创 2022-04-27 11:49:00 · 1811 阅读 · 0 评论 -
HJ20 密码验证合格程序
HJ20 密码验证合格程序描述密码要求:1.长度超过8位2.包括大小写字母.数字.其它符号,以上四种至少三种3.不能有长度大于2的不含公共元素的子串重复 (注:其他符号不含空格或换行)数据范围: 输入的字符串长度满足 1≤n≤100输入描述: 一组字符串。输出描述: 如果符合要求输出:OK,否则输出NG示例1输入:021Abc9000021Abc9Abc1021ABC9000021$bc9000输出:OKNGNGOK#要求3长度大于2的字符串重复,输出 NG原创 2022-04-25 17:29:32 · 343 阅读 · 0 评论 -
HJ17.坐标移动
HJ17.坐标移动描述开发一个坐标计算工具, A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面。输入:合法坐标为A(或者D或者W或者S) + 数字(两位以内)坐标之间以;分隔。非法坐标点需要进行丢弃。如AA10; A1A; %; YAD; 等。下面是一个简单的例子 如:A10;S20;W10;D30;X;A1A;B10A11;;A10;处理过程:起点(0,0)A10原创 2022-04-21 09:42:15 · 1275 阅读 · 0 评论 -
NC68 跳台阶
NC68 跳台阶描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个 n 级的台阶总共有多少种跳法(先后次序不同算不同的结果)。数据范围:(1≤n≤40)要求:时间复杂度:O(n)O(n) ,空间复杂度: O(1)O(1)示例1 输入:2 返回值:2说明:青蛙要跳上两级台阶有两种跳法,分别是:先跳一级,再跳一级或者直接跳两级。因此答案为2示例2输入:7返回值:21解题思路:第三项等于前两项之和 f(n) = f(n-1) + f(n-2)参考以上公式,如何压缩原创 2022-04-20 15:50:54 · 595 阅读 · 0 评论 -
HJ10.字符个数统计
HJ10.字符个数统计描述编写一个函数,计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 ,包括 0 和 127 ),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次例如,对于字符串 abaca 而言,有 a、b、c 三种不同的字符,因此输出 3。数据范围: (1≤ n ≤500)输入描述:输入一行没有空格的字符串。输出描述:输出 输入字符串 中范围在(0~127,包括0和127)字符的种数。def count_string(str原创 2022-04-20 09:51:58 · 259 阅读 · 0 评论 -
HJ3.明明的随机数
HJ3.明明的随机数描述明明生成了N个1到500之间的随机整数。请你删去其中重复的数字,即相同的数字只保留一个,把其余相同的数去掉,然后再把这些数从小到大排序,按照排好的顺序输出。输入描述:第一行先输入随机整数的个数 N 。 接下来的 N 行每行输入一个整数,代表明明生成的随机数。 具体格式可以参考下面的"示例"。输出描述:输出多行,表示输入数据处理后的结果while True: try: res = [] num = int(input())原创 2022-04-19 17:40:20 · 588 阅读 · 0 评论 -
NC61.两数之和
NC61.两数之和描述给出一个整型数组numbers,和一个目标值target,请在数组中找出两个加起来等于目标值的数的下标,返回的下标按升序排列。(注:返回的数组下标从1开始算起,保证target一定可以由数组里面2个数字相加得到)要求:空间复杂度O(n),时间复杂度O(nlogn)示例1输入:[3, 2, 4], 6返回值:[2, 3]说明:因为2 + 4 = 6 ,而2的下标为2 , 4的下标为3 ,又因为下标2 < 下标3 ,所以返回[2, 3]示例2输入:[20, 7原创 2022-04-18 16:57:30 · 697 阅读 · 0 评论 -
python十进制准换十六进制
HJ5. 进制转换描述写出一个程序,接受一个十六进制的数,输出该数值的十进制表示。输入描述:输入一个十六进制的数值字符串。输出描述:输出该数值的十进制字符串。不同组的测试用例用\n隔开。示例1输入:0xAA输出:170python3解题while True: try: s = input() print(int(s, 16)) except: break...原创 2022-04-18 16:55:45 · 705 阅读 · 0 评论 -
加密算法分类
加密算法分类严格意义上加密算法分为对称加密算法非对称加密算法由于散列算法所计算出来的散列值(Hash Value)具有不可逆(无法逆向演算回原本的数值)的性质,因此可有效的保护密码不可逆加密算法–hash(散列)算法不可逆加密不可逆加密算法的特征是加密过程中不需要使用密钥,输入明文后由系统直接经过加密算法处理成密文,这种加密后的数据是无法被解密的,只有重新输入明文,并再次经过同样不可逆的加密算法处理,得到相同的加密密文并被系统重新识别后,才能真正解密。Hash(散列)函数原创 2022-01-12 09:17:19 · 1393 阅读 · 0 评论 -
常用正则公式(手机号.......)
测试环境python 3.6django 3.1代码部分正则匹配常用正则匹配方法,不定时更新import re# 定义手机号码正则MOBILE_REGEX = re.compile('13\d{9}|14\d{9}|15\d{9}|16\d{9}|17\d{9}|18\d{9}|19\d{9}')# 定义邮箱地址正则EMAIL_REGEX = re.compile(r"(^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$)")# 定义原创 2022-01-04 14:23:04 · 262 阅读 · 0 评论 -
如何将编写的自动画圣诞树的代码打包成一个exe文件
测试环境windowspython 3.8pyinstaller 4.7安装 pyinstaller在脚本所在目录进入虚拟环境(如果没有虚拟环境,直接命令行安装),执行以下命令pip install pyinstallerpyinstaller 官方文档:https://pyinstaller.readthedocs.io/en/stable/usage.html查看已下载包pip list直接打包pyinstaller -F 脚本文件名称.pypyinstaller -F原创 2021-12-22 17:18:32 · 1921 阅读 · 1 评论 -
haversine公式,计算地图上两点之间的距离
测试环境python 3.6django 3.1代码部分haversine 公式用于计算地图上两点之间的直线距离A点经纬度(lon1, lat1)B点经纬度(lon2, lat2)def haversine(lon1, lat1, lon2, lat2): """ 计算地图两点之间的的距离 在地球上(以十进制度数指定) lon1: 经度1 lat1: 纬度1 lon2: 经度2 lat2: 纬度2 """ # 将十进制度原创 2021-12-14 14:14:37 · 2674 阅读 · 1 评论 -
django将图片链接转储服务器
前提当程序中遇到请求某些第三方接口时,每次请求的获取第三方的图片链接,如何将这个图片的保存到本地环境python 3.6django 3.1代码部分测试代码import uuidimport osimport urllib.requestimage_url = "http://img10.360buyimg.com/n1/s450x450_jfs/t1/85865/39/13611/488083/5e590a40E4bdf69c0/55c9bf645ea2b727.jpg"STA原创 2021-12-06 11:52:48 · 271 阅读 · 0 评论 -
python 字符串转字典的几种方法
禁止使用eval主要是应为,因为eval是不安全的,代码中写eval是要被口工资的,哈哈1. jsonimport jsons = '{"title": "格瓦斯", "play_address": 12}'print(type(s))d = json.loads(s)print(d)print(type(d))<class 'str'>{'title': '格瓦斯', 'play_address': 12}<class 'dict'>如果字符串中 是原创 2021-08-26 16:26:54 · 326 阅读 · 0 评论 -
python 操作excel--openpyxl
准备工作材料: xlsx文件环境要求:适配 windows、linux需求:对指定表格内容进行增、改,并保留原xlsx文件的样式和公式场景分析由于操作文件是xlsx, 所以xlrd、xlwt、xlutils这三个包已经不再适合我们的需求由于xlwings 不支持liunx环境,排除最终在从常用的选择,我选择了 openpyxl读取原文件, 另存为使用 load_workbook()读取excelload_workbook 的几种模式read_only=False只读模式,不可原创 2021-07-30 11:28:39 · 428 阅读 · 0 评论 -
python debugger(python 自带的调试器)
本文不涉及使用IDE进入调试模式breakpoint() 函数在你要调试的部分,使用breakpoint()n = 1if n: try: a = 1 for item in range(1, 100): breakpoint() # 进入debugger except Exception as e: print(e)else: print(231)注意 breakpoint() 函数只能在p原创 2021-07-09 17:50:54 · 4295 阅读 · 0 评论 -
一键让你的代码符合PEP8规范
PEP是什么原创 2021-06-12 15:39:01 · 429 阅读 · 3 评论
分享