python
编程语言,python基本语法,函数,以及其中的各种包
柚芷
这个作者很懒,什么都没留下…
展开
-
python pdf合并
担心网上各种pdf合并泄露信息,所以找了个脚本。from PyPDF2 import PdfFileReader, PdfFileMerger# 要合并的多个pdf文件pdf_files = ('PDF_20210511_095403.pdf', 'PDF_20210511_095450.pdf', 'PDF_20210511_095540.pdf')result_pdf = PdfFileMerger()for pdf in pdf_files: with open(pdf, .原创 2021-05-11 22:13:51 · 112 阅读 · 0 评论 -
python位运算and编码 剑指Offer
python里面的负数直接将其和0xffffffff进行与(&)操作即可得到其补码:def func(n): if n < 0: n = n & 0xffffffff剑指Offer题目输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。# -*- coding:utf-8 -*-class Solution: def NumberOf1(self, n): # write code here原创 2021-03-24 23:38:37 · 86 阅读 · 0 评论 -
剑指Offer(八)——动态规划
1、剪绳子给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1,m<=n),每段绳子的长度记为k[1],...,k[m]。请问k[1]x...xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。方案一:递归我们先定义函数f(n)为把绳子剪成若干段之后的各段长度乘积的最大值。在剪第一刀的时候,我们会有n-1种可能的选择,也就是说剪出来的第一段绳子的长度可能为1,2,......n原创 2021-03-07 22:10:16 · 95 阅读 · 0 评论 -
剑指Offer(七)——贪心
1、跳台阶扩展问题一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路方法一:暴力方法设f[i] 表示 当前跳道第 i 个台阶的方法数。那么f[n]就是所求答案。假设现在已经跳到了第 n 个台阶,那么前一步可以从哪些台阶到达呢?如果上一步跳 1 步到达第 n 个台阶,说明上一步在第 n-1 个台阶。已知跳到第n-1个台阶的方法数为f[n-1]如果上一步跳 2 步到达第 n 个台阶,说明上一步在第 n-2 个台阶。已知跳原创 2021-03-07 21:21:33 · 99 阅读 · 0 评论 -
剑指Offer(六)——链表
1、(JZ16)合并两个排序的链表输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。非递归做法:# -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: # 返回合并后列表 def Merge(self, pHead1, pH原创 2021-03-06 23:15:19 · 166 阅读 · 0 评论 -
matplotlib使用(20201224)
matplotlib各种样例https://matplotlib.org/gallery/lines_bars_and_markers/categorical_variables.html#sphx-glr-gallery-lines-bars-and-markers-categorical-variables-py用啥样子的图直接去找就完了关于图中不显示汉字的问题解答:https://zhuanlan.zhihu.com/p/104081310简要说明在前面加入两行代码i原创 2020-12-24 18:58:46 · 125 阅读 · 1 评论 -
ElementTree
创建树节点创建节点时,一定要指定节点名tree_node = Element("node1")print(tree_node.tag) # 输出 node1print(tree_node.text) # 输出 Noneprint(tree_node.tail) # 输出 Noneprint(tree_node.attrib) # 输出 {}也可在创建时指定属性tree_node = Element("node2", {"attr1": 1, "attr2": 2})原创 2020-12-17 22:08:46 · 237 阅读 · 0 评论 -
python读写XML(20201217)
XML指可扩展标记语言(eXtensibleMarkupLanguage),被设计用来传输和存储数据。python中有三个模块解析xml文件:DOM, ElementTree,SAX。三个工具包1、DOM(Document Object Model)DOM是个跨平台的标准模型,W3C定义了DOM模型里的概念。DOM将XML数据在内存中解析成一个树,通过对树的操作来操作XML。python的xml.dom.minimom模块实现了DOM1.1 DOM写入xml文件DOM写入x...原创 2020-12-17 21:09:55 · 1433 阅读 · 0 评论 -
Keras(五)——指定显卡且限制显存用量(GPU/CPU使用)
Keras在使用GPU时有个特点,就是默认全部占满显存。参考:https://cloud.tencent.com/developer/article/1434932原创 2020-12-15 21:54:45 · 337 阅读 · 0 评论 -
Python——encode()和decode()方法
字符串编码转换。python3.x默认utf-8编码1、encode()方法的语法格式如下:str.encode([encoding='utf-8'][,errors='strict'])注意,格式中用 [] 括起来的参数为可选参数,也就是说,在使用此方法时,可以使用 [] 中的参数,也可以不使用。2、decode()方法bytes.decode([encoding='utf-8'],[errors='strict'])...原创 2020-12-15 16:03:18 · 315 阅读 · 0 评论 -
Keras(四)——fit,fit_generator
主要就keras中fit和fit_generator这两个函数做出解释。参考:https://blog.csdn.net/learning_tortosie/article/details/85243310直接区别两个函数的参数:Keras.fit() Keras.fit_generator() keras.fit_generator()其他参数 x generator(输出为(inputs, targets)或(inputs, targets, samp.原创 2020-12-15 15:39:25 · 112 阅读 · 0 评论 -
python中三个点(…)
一句话总结: …代替了切片操作中前面所有的:, 即a[:, :, None] 和a[…, None]等价这里主要涉及python和numpy的切片操作。下面以二维切片为例:import numpy as npa = np.arange(25).reshape((5, 5))print(a)print(a[1:3, 2:5])'''[[ 0 1 2 3 4] [ 5 6 7 8 9] [10 11 12 13 14] [15 16 17 18 19] [2原创 2020-12-15 12:47:07 · 14259 阅读 · 0 评论 -
Keras完全梳理(二)
使用Keras Sequential顺序模型顺序模型是多个网络层的线性堆叠。可以将网络层实例的列表传递给Sequential的构造器,创建Sequential模型:from keras.models import Sequentialfrom keras.layers import Dense, Activationmnodel = Sequential([ Dense(32, input_shape=(784,)), Activation('relu'), De原创 2020-12-14 17:01:37 · 371 阅读 · 0 评论 -
Keras完全梳理(一)
30秒上手系列Sequential()模型:from keras.models import Sequentialmodel = Sequential()可以使用.add()来堆叠模型:from keras.layer import Densemodel.add(Dense(units=64, activation='relu', input_dim=100))model.add(Dense(units=10, activation='softmax'))完成模型构建后,可以原创 2020-12-10 17:01:38 · 139 阅读 · 0 评论 -
tensorflow2.0完全梳理(20201214)
对tensorflow2.0的常用函数做一个完全梳理。当前不是2.0,先来一个大概框架,之后再改。1、运算方式设置 tf.ConfigProto()实例import tensorflow as tfsession_config = tf.ConfigProto( log_device_placement=True, inter_op_parallelism_threads=0, intra_op_parallelism_threads=0, allow_so原创 2020-12-10 16:48:16 · 486 阅读 · 0 评论 -
python assert断言
Python assert(断言)用于判断一个表达式,在表达式条件为 false 的时候触发异常。断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况,例如我们的代码只能在 Linux 系统下运行,可以先判断当前系统是否符合条件。语法格式如下:assert expression等价于:if not expression: raise AssertionErrorassert 后面也可以紧跟参数:assert expression [,原创 2020-12-09 17:45:24 · 186 阅读 · 0 评论 -
VSCode快捷键
下面是VSCode的一些常用快捷键记录代码编辑格式调整代码行缩进Ctrl+[、Ctrl+] Ctrl+C、Ctrl+V复制或剪切当前行/当前选中内容 代码格式化:Shift+Alt+F,或Ctrl+Shift+P后输入format code 上下移动一行:Alt+Up或Alt+Down 向上向下复制一行:Shift+Alt+Up或Shift+Alt+Down 在当前行下边插入一行Ctrl+Enter 在当前行上方插入一行Ctrl+Shift+Ent...原创 2020-11-26 14:14:33 · 381 阅读 · 0 评论 -
Numpy常用总结(20201214)
1、np.argmax()import numpy as npa = np.array([[2.5404317e-03,1.1229481e-01, 1.9477041e-03, 4.1146163e-04, 1.3162383e-04, 1.2035034e-01, 2.4439844e-03, 7.2189087e-01, 3.7895240e-02, 9.3566909e-05],[9.2819709e-01, 1.3503281e-02, 3.8306025e-05, 1.103...原创 2020-11-25 15:20:05 · 100 阅读 · 0 评论 -
零次学习 Zero-Shot Learning(20201125)
CCF2020大数据与计算智能大赛——面向数据安全治理的数据内容智能发现与分级分类# 在比赛即将结束的时候进入。然后。。就是很菜。Zero-Shot Learning目前流行的zero-shot方案有两种:(1)人工专家未知标签的类中心定义,再进行向量化;(2)海量的数据集自动学习未知类中心向量。其中(1)更加准确,效果更好,但是更加麻烦。在不能使用外部数据的情况下,也不能人工写某些概念性的东西,所以直接采用Zero-Shot方案难度较大。可以尝试使用远程监督的方法是。在原创 2020-11-24 22:47:26 · 709 阅读 · 2 评论 -
python——正则的使用re
该篇主要介绍re的使用。1、re.compile函数re模块中的重要函数。该函数根据包含的正则表达式的字符串创建模式对象。可以实现更有效率的匹配。在直接使用字符串表示的正则表达式进行search,match和findall操作时,python会将字符串转换为正则表达式对象。而使用compile完成一次转换后,在每次使用模式的时候就不用重复转换。当然,使用re.compile()函数进行转换后,re.search(pattern, string)的调用方式就转换为pattern.search(stri原创 2020-11-24 12:59:58 · 166 阅读 · 0 评论 -
踩坑记录(20201123)
今天找了好久的bug。import csv file_path = 'xxx.csv'f = open(file_path, 'r', encoding='utf-8')reader = csv.reader(f)for line in reader: print(line)for line in reader: print('a')看不到a的,永远也看不到。原创 2020-11-23 17:25:33 · 93 阅读 · 0 评论 -
Python(十二)——日志模块logging使用
官方手册:https://docs.python.org/3/library/logging.html一、基础教程1、说明要执行的任务 完成任务的最佳工具 显示控制台输出,用于命令行脚本或程序的常规使用 print() 报告程序正常运行期间发生的事件(例如,用于状态监视或故障调查) logging.info() logging.debug() 发出有关特定运行时事件的错误 warnings.warn()在库代码中,如果可以避原创 2020-10-08 11:14:35 · 124 阅读 · 0 评论 -
python文件读写(覆盖、追加)
模式 可做操作 若文件不存在 是否覆盖 r 只能读 报错 - r+ 可读可写 报错 是 w 只能写 创建 是 w+ 可读可写 创建 是 a 只能写 创建 否,追加写 a+ 可读可写 创建 否,追加写 (找到之前梳理的就删除这个)...原创 2020-10-07 10:15:09 · 915 阅读 · 0 评论 -
Leetcode题目总结(二)——二叉树(20200924)
1、把二叉搜索树转换为累加树(1)题目给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于它的节点值之和。例如:输入: 原始二叉搜索树: 5 / \ 2 13输出: 转换为累加树: 18 / \ 20 13来源:力扣(Le...原创 2020-09-21 21:08:15 · 247 阅读 · 0 评论 -
Python(十一)——tqdm模块使用 python进度条
1、介绍tqdm 是一个快速,可扩展的Python进度条,可以在 Python 长循环中添加一个进度提示信息,用户只需要封装任意的迭代器tqdm(iterator)。2、例子例一from tqdm import tqdmimport timeif __name__ == '__main__': # main() for i in tqdm(range(10)): time.sleep(0.1)结果:例二if __name__ ==..原创 2020-09-15 17:40:26 · 609 阅读 · 0 评论 -
Python(十)——zip函数
1、介绍zip()函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少内存。可以使用list()转换来输出列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用*号操作符,可以将元组解压为列表。2、例子def main(): a = [1,2,3] b = [4,5,6] c = [4,5,6,7,8] zipped = zip(a,b) print(zipped) print(lis原创 2020-09-15 17:12:45 · 126 阅读 · 0 评论 -
Python(九)——Json模块使用(20200915)
1、json.dumps()json.dumps()用于将dict类型数据转成str,因为如果直接将dict类型的数据写入json文件中会发生报错,因此在词将数据写入时需要用到该函数。json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, cls=None,indent=None, separators=None, encoding="utf-8", default=None, sort_keys=Fa...原创 2020-09-15 15:07:12 · 117 阅读 · 0 评论 -
sklearn模块常用功能总结(20200915)
视频学习:https://www.bilibili.com/video/BV1xW411Y7Qd?p=4系列学习原创 2020-09-15 13:15:42 · 324 阅读 · 0 评论 -
LeetCode(五)算法——二叉树遍历
二叉树的遍历,前序,中序,后序。原创 2020-09-14 19:58:28 · 146 阅读 · 0 评论 -
Keras(一)——常用功能总结(20200915)
1、kr.preprocessing.sequence.pad_sequences(转化为相同序列长度)为了实现的简便,keras只能接受长度相同的序列输入。因此如果目前序列长度参差不齐,这时需要使用pad_sequences()。该函数是将序列转化为经过填充以后的一个长度相同的新序列新序列。 官方语法: keras.preprocessing.sequence.pad_sequences(sequences, maxlen=None, dtype='int32', padding=原创 2020-09-11 11:03:02 · 1334 阅读 · 0 评论 -
Python多线程——线程安全“Lock使用”
系统的线程调度具有一定的随机性。经典问题银行取钱问题。从银行取钱的基本流程基本上可以分为如下几个步骤:用户输入账户、密码,系统判断用户的账户、密码是否匹配。 用户输入取款金额。 系统判断账户余额是否大于取款金额。 如果余额大于取款金额,则取款成功;如果余额小于取款金额,则取款失败。代码:import threadingimport timeclass Account: # 定义构造器 def __init__(self, account_no, balanc原创 2020-09-08 15:15:28 · 982 阅读 · 1 评论 -
Python多线程——threading模块使用
每个独立的线程都有一个程序运行的入口、顺序执行序列和程序的出口。但是程序不能够独立执行,必须依附在应用程序中,由应用程序提供多个线程执行控制。每个线程都有他自己的一组CPU寄存器,称为线程的上下文,该上下文反映了线程上次运行该线程的CPU寄存器状态。指令指针和堆栈指针寄存器是线程上下文中两个最重要的寄存器,线程总是在进程得到上下文中运行的,这些地址都用于标志拥有线程的进程地址空间中的内存。python3线程中常用的模块:threading一、使用threading模块创建线程impor原创 2020-09-08 09:53:55 · 6173 阅读 · 2 评论 -
词云——wordcloud使用
wordcloud是优秀的词云展示第三方库,以词语为基本单位,通过图形可视化的方式,更加直观和艺术的展示文本。直接上代码了。import jiebaimport wordcloudimport imageiomk = imageio.imread('1.png')w = wordcloud.WordCloud(width=1000, height=700, background_color=原创 2020-09-03 18:31:51 · 607 阅读 · 0 评论 -
Leetcode(三)——N皇后(回溯问题,set())
题目:n皇后问题研究的是如何将n个皇后放置在n×n的棋盘上,并且使皇后彼此之间不能相互攻击。上图为 8 皇后问题的一种解法。给定一个整数 n,返回所有不同的n皇后问题的解决方案。每一种解法包含一个明确的n 皇后问题的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。示例:输入:4输出:[[".Q..", // 解法 1 "...Q", "Q...", "..Q."],["..Q.", // 解法 2 "Q......原创 2020-09-03 17:35:39 · 170 阅读 · 0 评论 -
Leetcode(二)回文串判断
回文串的判断。主要包含字符串的处理。原创 2020-09-02 19:18:43 · 211 阅读 · 0 评论 -
Python——生成器(Generator)
目录简单生成器generator元素的打印(g.next)生成器:一边循环一边计算的机制。一、简单生成器把一个列表生成式的[ ]改成( ),就创建了一个generator:>>> L = [x * x for x in range(10)]>>> L[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]>>> g = (x * x for x in range(10))>>> g.原创 2020-09-02 11:21:46 · 4669 阅读 · 0 评论 -
集成学习(一)_20200721
集成分类器(ensemble):1.bagging(ensemble.bagging.BaggingClassifier) 其原理是从现有数据中有放回抽取若干个样本构建分类器,重复若干次建立若干个分类器进行投票,通过投票决定最终的分类结构2.RandomForest(ensemble.RandomForestClassifier) 对随机选取的子样本集分别建立m个CART(Classifier and Regression Tree),然后投票决定最终的分类结果 Rando...原创 2020-07-21 15:51:04 · 123 阅读 · 0 评论 -
python(八)——获取路径下所有子目录,或非目录子文件
def file_name(file_dir): '''获取路径下所有子目录、或非目录子文件''' print('a') for root, dirs, files in os.walk(file_dir): print(root) #当前目录路径 print(dirs) #当前路径下所有子目录 ...原创 2020-03-15 22:36:24 · 1511 阅读 · 0 评论 -
Neo4j(六)——python操作neo4j(py2neo使用)
py2neo1、安装py2neopip install py2neo安装的时候踩坑了2、 实例3、基本使用教程https://blog.csdn.net/jian_qiao/article/details/100557985原创 2020-02-13 09:54:08 · 2767 阅读 · 1 评论 -
python(七)——字典
python里各种问题记录。1、字典查询。当字典中存在对应的key,则可以通过查询key找到对应的value,但是当没有这个key时,就会报错,所以:zz_dict = {'1':'a', '2':'b','3':'c'}(1)查询所有print(zz_dict)(2)查询一个print(zz_dict['1'])(3)不报错的查询 get当没有对应的k...原创 2020-01-08 15:37:58 · 241 阅读 · 1 评论