python
清醒思考
有问题可以私信我.
展开
-
一句话生成视频(python)
1.文字自动生成图片居中, 2.自动把文字读出来生成语音, 3.把图片和文字合成mp4文件;原创 2022-05-10 18:27:02 · 3104 阅读 · 6 评论 -
房屋价格预测-数据分析(python)
房屋价格预测-数据分析(python)dataset download(https://c.d2l.ai/stanford-cs329p/assignments.html#assignment-1)import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsfrom IPython import displaydisplay.set_matplotlib_formats('sv原创 2022-02-11 23:34:41 · 2090 阅读 · 0 评论 -
python tkinter 安装
python tkinter 安装brew install python-tkfrom tkinter import messageboxmessagebox.showinfo('alert', 'finished!')原创 2021-08-17 15:59:19 · 3363 阅读 · 0 评论 -
python报错: SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3
python报错: SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3解决方法:把vpn关掉.原创 2021-08-17 15:25:56 · 137 阅读 · 0 评论 -
bad magic number in ‘‘: b‘\x03\xf3\r\n‘
bad magic number in ‘’: b’\x03\xf3\r\n’find . -name \*.pyc -delete原创 2021-08-14 16:04:10 · 1556 阅读 · 0 评论 -
pip安装
pip安装$ python -m ensurepip --upgrade原创 2021-08-13 21:24:08 · 88 阅读 · 0 评论 -
urllib2 post请求
urllib2 post请求import urllib2req = urllib2.Request(url, body, headers)response = urllib2.urlopen(req)return response.read()原创 2021-06-10 11:40:44 · 921 阅读 · 0 评论 -
python: 截取小数不四舍五入
python: 截取小数不四舍五入def format_decimal(self, num): a, b = str(num).split('.') return float(a + '.' + b[0:4])原创 2021-05-27 22:46:39 · 2535 阅读 · 0 评论 -
ubuntu16.04下python3.5升级到python3.6
ubuntu16.04下python3.5升级到python3.6sudo add-apt-repository ppa:deadsnakes/ppasudo apt-get updatesudo apt-get install python3.6原创 2021-05-27 21:12:54 · 217 阅读 · 0 评论 -
图片改变尺寸(python)
图片改变尺寸(python)import os, sysfrom PIL import Imagefor path, dir_list, file_list in os.walk('png'): for file_name in file_list: print file_name if 'png' in file_name: from_img = 'png/' + file_name to_img = 'png52/' + file_name im = Image.op原创 2021-01-22 15:19:46 · 209 阅读 · 0 评论 -
python svg转png
python svg转pngimport cairosvgimport osfor path, dir_list, file_list in os.walk('flags'): for file_name in file_list: if 'svg' in file_name: print(file_name) from_img = 'flags/' + file_name to_img = 'png/' + file_name.replace('svg', 'png')原创 2021-01-22 14:59:53 · 602 阅读 · 0 评论 -
leetcode 287.寻找重复数(python)
leetcode 287.寻找重复数(python)给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。示例 1:输入: [1,3,4,2,2]输出: 2示例 2:输入: [3,1,3,4,2]输出: 3说明:不能更改原数组(假设数组是只读的)。只能使用额外的 O(1) 的空间。时间复杂度小于 O(n2) 。数组中只有一个重复的数字,但它可能不止重复出现一次。原创 2020-12-02 23:26:22 · 267 阅读 · 0 评论 -
leetcode 279.完全平方数(python)
leetcode 279.完全平方数(python)给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。示例 1:输入: n = 12输出: 3 解释: 12 = 4 + 4 + 4.示例 2:输入: n = 13输出: 2解释: 13 = 4 + 9.动态规划class Solution(object): def numSquares(self, n): dp = [0]原创 2020-11-19 22:09:21 · 318 阅读 · 0 评论 -
leetcode 922.按奇偶排序数组 II(python)
leetcode 922.按奇偶排序数组 II(python)给定一个非负整数数组 A, A 中一半整数是奇数,一半整数是偶数。对数组进行排序,以便当 A[i] 为奇数时,i 也是奇数;当 A[i] 为偶数时, i 也是偶数。你可以返回任何满足上述条件的数组作为答案。示例:输入:[4,2,5,7]输出:[4,5,2,7]解释:[4,7,2,5],[2,5,4,7],[2,7,4,5] 也会被接受。提示:2 <= A.length <= 20000A.length % 2原创 2020-11-12 10:52:24 · 227 阅读 · 0 评论 -
leetcode 1356.根据数字二进制下 1 的数目排序(python)
leetcode 1356.根据数字二进制下 1 的数目排序(python)给你一个整数数组 arr 。请你将数组中的元素按照其二进制表示中数字 1 的数目升序排序。如果存在多个数字二进制中 1 的数目相同,则必须将它们按照数值大小升序排列。请你返回排序后的数组。示例 1:输入:arr = [0,1,2,3,4,5,6,7,8]输出:[0,1,2,4,8,3,5,6,7]解释:[0] 是唯一一个有 0 个 1 的数。[1,2,4,8] 都有 1 个 1 。[3,5,6] 有 2 个 1 。原创 2020-11-06 23:40:12 · 229 阅读 · 0 评论 -
leetcode 240.搜索二维矩阵2(python)
leetcode 240.搜索二维矩阵2(python)编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例:现有矩阵 matrix 如下:[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30]原创 2020-11-01 19:51:22 · 296 阅读 · 0 评论 -
leetcode 239.滑动窗口最大值(python)
leetcode 239.滑动窗口最大值(python)给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。进阶:你能在线性时间复杂度内解决此题吗?示例:输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3输出: [3,3,5,5,6,7] 解释: 滑动窗口的位置 最大值---------------原创 2020-11-01 13:00:43 · 1062 阅读 · 0 评论 -
leetcode 140.单词拆分2(python)
leetcode 140.单词拆分2(python)给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,在字符串中增加空格来构建一个句子,使得句子中所有的单词都在词典中。返回所有这些可能的句子。说明:分隔时可以重复使用字典中的单词。你可以假设字典中没有重复的单词。示例 1:输入:s = "catsanddog"wordDict = ["cat", "cats", "and", "sand", "dog"]输出:[ "cats and dog", "cat原创 2020-11-01 11:45:35 · 942 阅读 · 0 评论 -
leetcode 238.除自身以外数组的乘积(python)
leetcode 238.除自身以外数组的乘积(python)给你一个长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。示例:输入: [1,2,3,4]输出: [24,12,8,6]**提示:**题目数据保证数组之中任意元素的全部前缀元素和后缀(甚至是整个数组)的乘积都在 32 位整数范围内。说明: 请**不要使用除法,**且在 O(n) 时间复杂度内完成此题。进阶:原创 2020-10-28 23:21:23 · 264 阅读 · 0 评论 -
leetcode 236.二叉树的最近公共祖先(python)
leetcode 236.二叉树的最近公共祖先(python)给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树: root = [3,5,1,6,2,0,8,null,null,7,4]示例 1:输入: root = [3,5,1,6,2,0,8,null,null,7,4], p原创 2020-10-28 23:04:53 · 318 阅读 · 0 评论 -
leetcode 1207.独一无二的出现次数(python)
leetcode 1207.独一无二的出现次数(python)给你一个整数数组 arr,请你帮忙统计数组中每个数的出现次数。如果每个数的出现次数都是独一无二的,就返回 true;否则返回 false。示例 1:输入:arr = [1,2,2,1,1,3]输出:true解释:在该数组中,1 出现了 3 次,2 出现了 2 次,3 只出现了 1 次。没有两个数的出现次数相同。示例 2:输入:arr = [1,2]输出:false示例 3:输入:arr = [-3,0,1,-3,1,1,原创 2020-10-28 21:44:50 · 302 阅读 · 0 评论 -
leetcode 221.最大正方形(python)
leetcode 221.最大正方形(python)在一个由 0 和 1 组成的二维矩阵内,找到只包含 1 的最大正方形,并返回其面积。示例:输入: 1 0 1 0 01 0 1 1 11 1 1 1 11 0 0 1 0输出: 4动态规划dp方程:dp(i, j) = min(dp(i-1, j) , dp(i, j-1), dp(i-1, j-1)) + 1这个还是很容易想到的, 画个图自己推下就好class Solution(object): def max原创 2020-10-27 16:39:14 · 459 阅读 · 0 评论 -
leetcode 215.数组中的第k个最大元素(python)
leetcode 215.数组中的第k个最大元素(python)在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例 1:输入: [3,2,1,5,6,4] 和 k = 2输出: 5示例 2:输入: [3,2,3,1,2,4,5,5,6] 和 k = 4输出: 4说明:你可以假设 k 总是有效的,且 1 ≤ k ≤ 数组的长度。1.直接排序class Solution(object): def fi原创 2020-10-27 15:50:15 · 272 阅读 · 0 评论 -
leetcode 144.二叉树的前序遍历(python)
leetcode 144.二叉树的前序遍历(python)给定一个二叉树,返回它的 前序 遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,2,3]进阶: 递归算法很简单,你可以通过迭代算法完成吗?递归class Solution(object): def preorderTraversal(self, root): # 递归 res = [] self.dfs(原创 2020-10-27 14:55:19 · 211 阅读 · 0 评论 -
leetcode 169.多数元素(python)
leetcode 169.多数元素(python)给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入: [3,2,3]输出: 3示例 2:输入: [2,2,1,1,1,2,2]输出: 2排序找中间数class Solution(object): def majorityElement(self, nums): # 排序找中间数原创 2020-10-26 09:07:16 · 243 阅读 · 0 评论 -
leetcode 1365.有多少小于当前数字的数字(python)
leetcode 1365.有多少小于当前数字的数字(python)给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目。换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 nums[j] < nums[i] 。以数组形式返回答案。示例 1:输入:nums = [8,1,2,2,3]输出:[4,0,1,1,3]解释: 对于 nums[0]=8 存在四个比它小的数字:(1,2,2 和 3)。 对原创 2020-10-26 09:00:27 · 304 阅读 · 1 评论 -
leetcode 207.课程表(python)
leetcode 207.课程表(python)你这个学期必须选修 numCourse 门课程,记为 0 到 numCourse-1 。在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们:[0,1]给定课程总量以及它们的先决条件,请你判断是否可能完成所有课程的学习?示例 1:输入: 2, [[1,0]] 输出: true解释: 总共有 2 门课程。学习课程 1 之前,你需要完成课程 0。所以这是可能的。示例 2:输入: 2,原创 2020-10-25 16:30:00 · 530 阅读 · 0 评论 -
leetcode 845.数组中的最长山脉(python)
leetcode 845.数组中的最长山脉(python)我们把数组 A 中符合下列属性的任意连续子数组 B 称为 “山脉”:B.length >= 3存在 0 < i < B.length - 1 使得 B[0] < B[1] < ... B[i-1] < B[i] > B[i+1] > ... > B[B.length - 1](注意:B 可以是 A 的任意子数组,包括整个数组 A。)给出一个整数数组 A,返回最长 “山脉” 的长度。原创 2020-10-25 13:15:02 · 354 阅读 · 0 评论 -
leetcode 160.相交链表(python)
leetcode 160.相交链表(python)编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表**:**在节点 c1 开始相交。示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Reference of the node with value = 8输入解释:相交节点的值为 8 (注意,如果两个链表相交则不能为 0)。从各自的表头开始算起,原创 2020-10-24 09:42:07 · 172 阅读 · 0 评论 -
leetcode 1024.视频拼接(python)
leetcode 1024.视频拼接(python)你将会获得一系列视频片段,这些片段来自于一项持续时长为 T 秒的体育赛事。这些片段可能有所重叠,也可能长度不一。视频片段 clips[i] 都用区间进行表示:开始于 clips[i][0] 并于 clips[i][1] 结束。我们甚至可以对这些片段自由地再剪辑,例如片段 [0, 7] 可以剪切成 [0, 1] + [1, 3] + [3, 7] 三部分。我们需要将这些片段进行再剪辑,并将剪辑后的内容拼接成覆盖整个运动过程的片段([0, T])。返回所原创 2020-10-24 08:50:53 · 2586 阅读 · 0 评论 -
leetcode 148.排序链表(python)
leetcode 148.排序链表(python)在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。示例 1:输入: 4->2->1->3输出: 1->2->3->4示例 2:输入: -1->5->3->4->0输出: -1->0->3->4->5递归 + 归并class Solution(object): def sortList(self, head):原创 2020-10-23 23:13:59 · 236 阅读 · 1 评论 -
leetcode 234.回文链表(python)
leetcode 234.回文链表(python)请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true进阶:你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?class Solution(object): def isPalindrome(self, head): # 快慢指针, 翻转后面的链表, 然后对比前后部分是否相同 fast原创 2020-10-23 14:50:44 · 133 阅读 · 0 评论 -
leetcode 146.LRU缓存机制(python)
leetcode 146.LRU缓存机制(python)运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。获取数据 get(key) - 如果关键字 (key) 存在于缓存中,则获取关键字的值(总是正数),否则返回 -1。写入数据 put(key, value) - 如果关键字已经存在,则变更其数据值;如果关键字不存在,则插入该组「关键字/值」。当缓存容量达到上限时,它应该在写入新数据之前删除最久未使用的数据值,原创 2020-10-21 21:40:40 · 184 阅读 · 0 评论 -
leetcode 142.环形链表2(python)
leetcode 142.环形链表2(python)给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意,pos 仅仅是用于标识环的情况,并不会作为参数传递到函数中。**说明:**不允许修改给定的链表。进阶:你是否可以使用 O(1) 空间解决此题?示例 1:输入:head = [3,2,0,-4], pos = 1原创 2020-10-21 16:27:13 · 174 阅读 · 1 评论 -
leetcode 925.长安键入(python)
leetcode 925.长安键入(python)你的朋友正在使用键盘输入他的名字 name。偶尔,在键入字符 c 时,按键可能会被长按,而字符可能被输入 1 次或多次。你将会检查键盘输入的字符 typed。如果它对应的可能是你的朋友的名字(其中一些字符可能被长按),那么就返回 True。示例 1:输入:name = "alex", typed = "aaleex"输出:true解释:'alex' 中的 'a' 和 'e' 被长按。示例 2:输入:name = "saeed", typed原创 2020-10-21 16:00:15 · 180 阅读 · 0 评论 -
leetcode 139.单词拆分(python)
leetcode 139.单词拆分(python)给定一个非空字符串 s 和一个包含非空单词的列表 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。说明:拆分时可以重复使用字典中的单词。你可以假设字典中没有重复的单词。示例 1:输入: s = "leetcode", wordDict = ["leet", "code"]输出: true解释: 返回 true 因为 "leetcode" 可以被拆分成 "leet code"。示例 2:输入: s = "原创 2020-10-17 23:12:25 · 670 阅读 · 0 评论 -
leetcode 52.N皇后2(python)
leetcode 52.N皇后2(python)n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。上图为 8 皇后问题的一种解法。给定一个整数 n,返回 n 皇后不同的解决方案的数量。示例:输入: 4输出: 2解释: 4 皇后问题存在如下两个不同的解法。[ [".Q..", // 解法 1 "...Q", "Q...", "..Q."], ["..Q.", // 解法 2 "Q...", "...Q", ".Q原创 2020-10-17 22:58:34 · 168 阅读 · 0 评论 -
leetcode 136.只出现一次的数字(python)
leetcode 136.只出现一次的数字(python)给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4异或class Solution(object): def singleNumber(self, nums): # 异或 r原创 2020-10-16 22:18:52 · 169 阅读 · 0 评论 -
leetcode 977.有序数组的平方(python)
leetcode 977.有序数组的平方(python)给定一个按非递减顺序排序的整数数组 A,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。示例 1:输入:[-4,-1,0,3,10]输出:[0,1,9,16,100]示例 2:输入:[-7,-3,2,3,11]输出:[4,9,9,49,121]提示:1 <= A.length <= 10000-10000 <= A[i] <= 10000A 已按非递减顺序排序。使用系统排序方法class原创 2020-10-16 22:08:42 · 198 阅读 · 0 评论 -
leetcode 128.最长连续序列(python)
leetcode 128.最长连续序列(python)给定一个未排序的整数数组,找出最长连续序列的长度。要求算法的时间复杂度为 O(n)。示例:输入: [100, 4, 200, 1, 3, 2]输出: 4解释: 最长连续序列是 [1, 2, 3, 4]。它的长度为 4。哈希class Solution(object): def longestConsecutive(self, nums): # 哈希 nums = set(nums)原创 2020-10-15 20:40:55 · 219 阅读 · 0 评论