自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 资源 (4)
  • 收藏
  • 关注

原创 训练自己的GPT2-Chinese模型

基于GPT2-Chinese训练中文文本模型

2023-03-09 17:14:03 12562 18

原创 手写Django分页组件

一次编写,多次使用""" @Author: xiaozhi @Email: xz950523@163.com @FileName: pagination.py @DateTime: 2022/5/27 @SoftWare: PyCharm"""""" 自定义分页组件 如想再次使用,需做如下几件事: 在视图函数中: def pretty_list(request): # 1. 根据自己的情况去筛选自己的数据 q

2022-05-27 13:52:27 336

原创 Python和OpenCV相结合实现相关录屏功能

import timeimport numpy as npfrom mss import mssimport cv2bounding_box = {'top': 66, 'left': 0, 'width': 858, 'height': 466}sct = mss()timer = time.time()while True: start = time.time() sct_img = sct.grab(bounding_box) cv2.imshow('win

2022-03-01 14:08:08 3051

原创 Python-单链表结构上的操作

定义一个单链表节点类class Node(object): def __init__(self, data, next=None): self.data = data self.next = next遍历使用一个临时的指针变量。这个变量先初始化为链表结构的head指针,然后控制一个循环。如下所示:probe = headwhile probe != None: <use or modify probe.data> probe

2021-07-15 17:53:46 422

原创 从MySQL中将数据库导入SQL Server

一、为MySQL安装ODBC驱动下载MySQL ODBC Connector,下载:http://dev.mysql.com/downloads/connector打开数据源(ODBC),选择系统DSN,点击添加在 创建新数据源对话框中,选择MySQL ODBC 5.3 Unicode Driver ,点完成。完成后会出现MySQL 链接对话框,添加MySQL 数据库账号信息。点击测试确认连接是否成功。二、 创建Microsoft SQL到MySQL的链接在SQL

2021-05-27 14:24:44 2059 5

原创 使用JavaScript调用本地打印机

在前端页面调用本地打印机的实现:点击打印之后调出打印机代码实现:# HTML代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body> <p id="xz">This is Printer!</p> &lt

2021-05-20 09:13:04 6822 3

原创 实现strStr()

给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回 -1 。class Solution: def strStr(self, haystack: str, needle: str) -> int: if not needle: return 0 left = 0 right = len(needle

2021-05-19 11:00:48 145

原创 验证回文串

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。解题思路:让字符串字符都变成小写,只保留数字和字母,然后翻转比较。代码实现:class Solution: def isPalindrome(self, s: str) -> bool: s = ''.join(filter(str.isalnum, s.lower())) return s == s[::-1]...

2021-05-19 10:20:29 154

原创 种花问题

假设有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给你一个整数数组 flowerbed 表示花坛,由若干 0 和 1 组成,其中 0 表示没种植花,1 表示种植了花。另有一个数 n ,能否在不打破种植规则的情况下种入 n 朵花?能则返回 true ,不能则返回 false。解题思路:从示例中可以看出,当列表中存在三个连续为0的元素时,说明可以种一棵树;而还有一种情况是[0,0,1],[1,0,0]这种形式,也可以种植一棵树,但是

2021-05-18 17:57:53 219

原创 Python八种连接列表的方式

1. 最常见的相加使用+对多个列表进行相加>>> list1 = [1,2,3]>>> list2 = [4,5,6]>>> list3 = [7,8,9]>>>>>> list1 + list2 + list3[1, 2, 3, 4, 5, 6, 7, 8, 9]2. 借助itertoolsitertools在Python里有一个非常强大的内置模块,它专门用于操作可迭代对象。>>&g

2021-04-13 16:06:33 1210

原创 两数之和

给定一个整数数组nums和一个整数目标值target,在该数组中找出和为目标值的那两个整数,并返回它们的数组下标可以假设每种输入只会对应一个答案。但是数组中同一个元素不能使用两遍。可以按任意顺序返回答案。class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: for i in range(len(nums)): for j in range(i+1,

2021-02-26 09:48:27 140

原创 移动零

要求给定一个数组nums,编写一个函数将所有的0移动到数组的末尾,同时保持非零元素的相对顺序。class Solution: def moveZeroes(self, nums: List[int]) -> None: """ Do not return anything, modify nums in-place instead. """ a = 0 b = 0 while a < l

2021-02-25 17:21:46 139

原创 加一

要求:给定一个由整数组成的非空数组所表示的非负整数,在该书的基础上加一。最高位数字存放在数组的首位,数组中每个元素只存储单个数字。可以假设除了整数0之外,这个整数不会以零开头。class Solution: def plusOne(self, digits: List[int]) -> List[int]: if digits[-1] < 9: digits[-1] += 1 return digits

2021-02-25 15:31:00 165

原创 Python——itertools模块

itertools包含特殊用途的迭代器函数。在for ... in循环调用迭代函数,每次会返回一项,并记住当前调用的状态。即使chain()的参数只是单个迭代对象,它也会使用参数进行迭代:cycle()是在一个在它的参数之间循环的无限迭代器:accumulate()计算累积的值。默认是累加和:当然,我们也可以把一个函数作为accumulate()的第二个参数,代替默认的加法函数。这个参数函数应该接受两个参数,返回单个结果。下面的例子计算的是乘积:...

2021-01-19 14:21:42 181 1

原创 Python——双端队列:栈+队列

deque是一种双端队列,同时具有栈和队列的特征。它可以从序列的任何一端添加和删除项。现在,来看看从一个词的两端扫向中间,判断是否为回文。函数popleft()去掉最左边的项并返回该项,pop()去掉最右边的项并返回该项。从两边一直向中间扫描,只要两端的字符匹配,一直弹出直到到达中间:这里把判断回文作为双端队列的一个简单说明。如果想要写一个快速的判断回文的程序,只需要把字符串反转和原字符串进行比较。而Python没有对字符串进行反转的函数reverse(),但还是可以利用反向切片的方式进行反转,如下

2021-01-19 12:02:03 209

原创 Python随笔

输出某个路径下的所有文件和文件夹的路径import osdef print_dir(): filepath = input("请输入一个路径:") if filepath == "": print("请输入正确的路径") else: for i in os.listdir(filepath): print(os.path.join(filepath,i))print(print_dir())输出某个路径及其子目..

2020-12-10 13:51:57 210

原创 推荐一个好用的MySQL命令行工具

给大家推荐一个好用的MySQL命令行工具:mycli。比起常用的MySQL命令行,它的特点也是很明显的,如下:1. 当输入SQL关键字时,数据库的列和表格会自动补全;2. 关键字高亮显示3. 这是一个基于`Python`开发的工具安装方法Windows:pip install mycliMacOS:brew install mycli使用方法和 mysql 命令相似,只要把命令中的 mysql 改为 mycli 就行。使用 mycli 登录:mycli -u root -p pass

2020-12-03 14:24:37 947

原创 Python3支持emoji表情!!!

无意中看到了Python3居然可以支持emoji表情,之前还不知道,觉得很有意思。pypi现有的库emoji来处理emoji字符串:https://pypi.org/project/emoji/安装:pip install emoji --upgrade小试牛刀:import emojiresult = emoji.emojize("Python is :thumbs_up:")print(result)result = emoji.demojize("Python is ????")

2020-11-26 17:39:34 801

原创 Python中的垃圾回收机制

大多数情况下,Python程序员不需要手动进行垃圾回收,因为Python中有自动的垃圾回收机制,能自动的将不需要使用的实例对象进行销毁。无论是手动销毁还是自动销毁,都会调用__del__()方法。class CLanguage: def __init__(self): print("调用__init__()方法构造对象") def __del__(self): print("调用__del__()销毁对象,释放其空间")clangs = CLanguag

2020-11-26 15:27:16 310

原创 Python3编码问题

文章链接:Python3中遇到UnicodeEncodeError: ‘ascii’ codec can’t encode characters in ordinal not in range(128)

2020-11-12 15:45:39 115

原创 Linux下SQL Server中VARCHAR类型中文乱码问题解决

项目场景:往SQL Server数据库中写入数据,定义了其中一个字段类型为VARCHAR类型,该字段类型的值为汉字问题描述:遇到的问题:在写入数据后,通过查询语句来检查写入数据是否正确时,显示出的结果为???的乱码。 原因分析:通过查询资料得知:默认创建出来的数据库实例默认使用拉丁文编码,这导致了原有项目中 varchar 字段插入中文会乱码的问题。解决方案:通过修改字段类型使其正确显示汉字:将varchar类型修改为nvarchar;修改方法如下alter table [t

2020-10-30 15:04:54 1326

原创 SQL Server修改字段类型命令

Alter table [表名] Alter column [列名] [列类型]例:Alter table table_A Alter column menuId varchar(50);含义:将表table_A的menuld字段修改为50的varchar类型.

2020-10-30 11:42:25 1860

原创 SQL Server修改默认用户名及密码

登录sqlserver:sqlcmd -S localhost -U sa -p修改默认用户名sa:alter login sa with name=[newname],修改完之后使用:alter login newname enable修改用户密码:exec sp_password null,‘newpassword’,‘sa’alter login sa with password=‘newpassword’sqlcmd -S ipaddress -U sa -P password -d d

2020-10-28 16:21:43 7358 2

原创 Linux卸载自带的Python

卸载自带的Pythonrpm -qa | grep python | xargs rpm -e --allmatches --nodeps删除所有与Python相关的文件whereis python | xargs rm -rf

2020-10-24 20:01:35 293

原创 三次握手&四次挥手

前言:三次握手与四次挥手是TCP协议中的一个连接管理机制,在正常情况下, TCP要经过三次握手建立连接, 四次挥手断开连接。简介 为了建立连接TCP连接,通信双方必须从对方了解如下信息: 1. 对方报文发送的开始序号; 2. 对方发送数据的缓冲区大小; 3. 能被接收的最大报文长度MSS; 4. 被支持的TCP选项。在TCP协议中,通信双方将通过三次TCP报文实现对以上信息的了解,并在此基础上建立一个TCP连接,而通信双方的三次TCP报文段的交换过程,也就是通常所说的T

2020-10-15 18:08:13 133

原创 SQL server字段值为变量

如果SQL server的字段值为变量的话,可以使用字符串拼接的方式来实现。import pymssqlconnect = pymssql.connect(host = '127.0.0.1',port = '54566',user = 'sa',password = 'xiaozhi',database = 'data_collection')if connect: print("连接成功!")a = ['111','222','333','444','555','666','777',

2020-09-29 14:53:53 1191

原创 虚拟机中的Centos用户密码忘记

如果忘记虚拟机中Centos用户的密码,可以使用以下方法:重启Linux系统光标点击到Linux系统中,按照提示按e键。(光标必须在Linux系统中,不然光标在Windows中,Linux没有任何反应)在如下图所示位置插入init=/bin/sh。Ctrl+x引导启动依次执行以下命令:1)mount -o remount, rw /2)Linux安装的用户3)输入两次密码4)touch /.autorelabel5)exec /sbin/init完成输

2020-09-18 10:52:21 870

原创 解决登录MySQL数据库时报错:ERROR 2005(HY000)

登录MySQL数据库时报错:ERROR 2005 (HY000): Unknown MySQL server host 'localhost;' (2)解决方法:输入mysql -uroot -p -hlocalhost;,完美解决!

2020-09-07 15:42:42 15000 10

原创 定时向MySQL数据库中写入数据

将数据定时写入数据库中:import MySQLdbimport scheduleimport timeclass SaveToSql(object): def __init__(self, conn): self.conn = conn # 储存 def save(self): cursor = self.conn.cursor() data_list = [1804, 0, 0, 1, 0, 0, 1, 0]

2020-09-07 15:02:32 1988 1

原创 只出现一次的数字

代码实现:class Solution: def singleNumber(self, nums: List[int]) -> int: # return 2 * sum(set(nums)) - sum(nums) # 这种方法也是可行的 x = 0 for i in nums: x^=i return x说明:当数组中只出现一次的数字的个数为奇数时,返回这个数字;当数组中只出现一次的数字为偶数时

2020-08-27 18:01:36 175

原创 关于pip升级问题

使用pip安装模块或者更新pip时经常会遇到以下问题:我承认这很让人头疼,至少我是这样认为的。那么如何解决呢?我们可以使用国内的源:更新pip使用:python -m pip install --upgrade pip -i https://pypi.douban.com/simple使用pip安装模块时可以使用:pip install 模块名 -i https://pypi.douban.com/simple...

2020-08-26 16:55:59 215

原创 存在重复数字

可以利用集合这一数据结构的特性来实现,比较列表的长度和将列表转换为集合之后的长度。class Solution: def containsDuplicate(self, nums: List[int]) -> bool: return not len(nums) == len(set(nums))

2020-08-18 17:35:33 158

原创 旋转数组

方案一直接将列表的两个部分进行拼接,但是其空间复杂度较大,并且需要注意k的取值,当k的值大于列表长度时,需要进行取余处理。class Solution: def rotate(self, nums: List[int], k: int) -> None: """ Do not return anything, modify nums in-place instead. """ k = k % len(nums) ...

2020-08-11 17:33:33 227

原创 买卖股票的最佳时机 II

要求:给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。class Solution: def maxProfit(self, prices: List[int]) -> int: result = 0 for day in range(len(prices)-1):

2020-08-07 17:01:53 158

原创 删除排序数组中的重复项

删除排序数组中的重复项class Solution: def removeDuplicates(self, nums: List[int]) -> int: x = 0 y = 1 while y < len(nums): if nums[x] == nums[y]: y = y + 1 else:

2020-08-07 15:58:22 222

原创 用Python实现小学时数学老师教的分解质因数

输入一个正整数,将这个数分解质因数。例如:输入20,输出20=2 * 2 * 5代码实现:n = int(input("请输入一个正整数:"))for k in range(2, n+1): while n != k: if n % k == 0: print(k, end="*") n = n / k else: breakprint(int(n))>>> 请输入

2020-07-31 17:34:14 438

原创 使用Python生成器实现“杨辉三角”

生成器: 一种一边循环一边计算的机制,称为生成器(generator)。要创建一个generator,有很多种方法:方法一只要把一个列表生成器的[]改成(),就创建了一个generator。方法二如果一个函数定义中包含yield关键字,那么这个函数就不是一个普通的函数,而是一个generator。注意:用for循环调用generator时,拿不到generator的return语句的返回值。如果想要拿到返回值,必须捕获StopIteration错误,返回值包含在StopIteration的val

2020-07-27 13:50:35 547

原创 Django中time类型datetime前端显示undefined

首先感谢为我解惑的我的朋友阿哲,是一位毕业于东北某大学软件工程的小哥哥,经常向他请教自己不懂的问题,这次也不例外,至于结果,不用多想,每次都能如我所愿。贴上他的博客,感兴趣的朋友可以去逛一下。首先说一下遇到的问题:在数据库中有一个字段的数据类型为datetime,在取出此字段的值展现在前端页面上的时候,没有正确显示,而显示为undefined。后来也是问了这位朋友才知道,datetime在前端页面显示的时候需要转换格式,才能正确的显示。这是数据库字段类型截图:没有转换格式之前显示在前端页面的截图:

2020-07-22 17:51:57 1483

原创 前端—清除localStorage缓存中的value值

在localStorage中储存数据,方便在页面中使用数据的时候调用。如果用完数据之后需要清除localStorage中储存的数据,可以使用以下几种方式:localStorage.clear()可以清除localStorage中所有的keyfunction clear_data(){ localStorage.clear();}localStorage.removeItem()通过以下方法来删除对应key以及key中的内容function clear_data(){ window

2020-07-21 17:30:16 3062

原创 JavaScript 数组转换问题

做项目是遇到了这样的问题。取到的数据是这样的:[",1,2,3,4,5"],这个数组不便于遍历,需要转换为:[1,2,3,4,5]的形式。其实现方法用到了split()和Number对象,下面是实现过程:var array = [",1,2,3,4,5"]var array1 = array[0].split(",");var array2 = [];for (var i = 1; i < array1.length; i++) { array2.push(Number(array1[i])

2020-07-16 17:53:14 243 1

基于python实现MD5加密窗体程序

基于python实现MD5加密窗体程序

2022-05-30

python实现windows关机脚本

python实现windows关机脚本

2022-05-30

python实现2048小游戏

python

2021-08-24

eight_queens.py

python实现八皇后问题。原文链接地址:https://www.jb51.net/article/138717.htm

2020-07-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除