python入门
文章平均质量分 63
圣手书生肖让
这个作者很懒,什么都没留下…
展开
-
怎样用python开发一个c++的本地OJ练习系统
由于在做c++信奥教学,出于某种考虑,可能会用到本地的OJ练习系统。略作修改也可以成为测试系统。用Python开发是比较简单的,不像网络的OJ平台,本地OJ不用考虑太复杂的用户情况,只需处理好最基本的几个问题即可,下面简单介绍一下。一、源代码编译源代码编译,是通过直接调用MinGW64实现的。def makeExe(cpp): command= r'MinGW64\bin\g++.exe %s -o %s -m32' # command= r'gcc\bin\g++....原创 2021-12-24 10:55:03 · 1566 阅读 · 0 评论 -
编程整理术
整理术大行其道,但现有的整理术大多是在讲有形物的整理,无形的电子资料怎样整理呢?那当然就离不开编程了。可即使是会编程,整理资料也存在很多弊端。我们平时可能收集了很多资料,或者自己也整理了一些资料,但这些资料的内容特点不一样,导致了他们的格式往往也是不统一的。为了对这些资料进行处理,就得写很多不同的程序,这些程序的整理本身就成为一个问题,日后想使用就比较麻烦。这里,结合个人的实践体验,推荐给大家一种有趣的编程架构,它的目标是用一个接口统一所有的文件打开格式,所有的文件导出格式。为了实现这个目标,我原创 2021-10-04 09:48:34 · 193 阅读 · 0 评论 -
算24趣味扩展——五张牌中唯一一组用常规四则运算不能计算出2的组合
算24的扩展标准算24只是扑克牌计算玩法的一个特例。简单地说,至少有三种扩展:1、目标数字不仅是24,还可以算其他数字2、牌组不仅用4张牌组,还可以用3、5、6张牌组3、计算方法不限于简单四则运算,还可以增加新的运算方法五张牌组算2在前面的这三重扩展下,我发现了一个有趣的事情:几乎所有的5张牌组,用标准的四则运算都可以算出2。唯一一组不能计算的是[8, 13, 13, 13, 13]。但是,这一牌组,如果增加一个扩展运算:^(幂次运算例如:3 ^ 2 = 9),就可以算出2。有没有想挑原创 2021-01-20 13:00:06 · 670 阅读 · 0 评论 -
八皇后12组不重复解的pythonic编程法
八皇后问题,国际象棋盘上放8个皇后,互相不能攻击。这个问题如此有名,很多不会下国际象棋的人都听说过。所有可能的布局解一共有92种,但其中大部分是重复的,比如左右对称,或者是旋转棋盘对称。据说其中完全独立的布局一共只有12种。虽然我得到了一个12个不同的布局,但在网上一直没有找到12种布局图,所以无法验证。92种解用python求解92种布局是比较简单的,网上算法有很多(不知道去重之后有多少种),这里展示一个自己原创的解法。算法的特点是使用了字典来记录局面,使用yield机制来返回结果。这样的算法应该是原创 2021-01-05 10:20:13 · 1579 阅读 · 1 评论 -
神奇的图片处理技术,隐藏信息,点击才见
这是一种神奇的图片处理方式,可以让我们隐藏一部分图片的内容。当用户点击查看图片的时候,会有不同的内容显示出来!先看一下图片的效果一、原理注意,这不是动图(GIF)技术。动图是自动切换的,不会等到我们点击时才变化。这种技术之所以存在,是由于如下三个原因:1、手机由于窗口较小,所以对于图片,人们在阅读时习惯于点击放大观看。2、在文章中的图片,一般是白色背景;但在放大图片查看的模式下,则会自动切换为黑色的背景。3、一般的图片在黑色背景下只会显得比较突出而已,而png图片..原创 2020-12-16 19:36:57 · 1629 阅读 · 1 评论 -
朝闻道,夕死可矣。究竟闻的是什么道?
《论语》中有一句话是“朝闻道,夕死可矣”。如果早上能听到这个“道”,就算晚上死了都值。一直很好奇,究竟是什么道,这么值钱?在儒家经典里,这个问题没有真正有效的回答。一般的回答是一切宇宙中的真理。这种回答毫无意义——多少像爱因斯坦这样绝顶聪明的人,终其一生都没有研究明白宇宙中一个小小的分支(统一力场)的真理。把宇宙中的一切真理都让你一个早上就听明白,可能么?那么《论语》中的这句朝闻道,究竟是有解还是无解呢?在佛家经典中,看到了解答。说起来这是佛的弟子阿难的故事。那已经是佛灭度后又过了很多年,很多大弟原创 2020-12-10 14:11:53 · 523 阅读 · 1 评论 -
python循环语句的缺陷,海象运算符在一定程度上弥补了它
标准的循环语句有三种:for循环,当循环,直到循环。python只支持其中的两个,for循环和当循环。当循环和直到循环唯一的差别就是循环条件判断在循环代码中的位置。当循环在开头,直到循环在末尾。这种差别并不算大,用当循环来实现直到循环也不是很难的一件事。但作为程序员,最难以容忍的是代码重复。比如按行读文件时,由于只能使用当循环,在python中不得不这样写,注意第二行与第五行的重复:with open('testfile.txt', 'r') as f1: line= f1.r原创 2020-12-01 18:50:39 · 274 阅读 · 0 评论 -
用Python画填色的中国分省地图(数据+源代码)
前一篇文章提供了中国陆地国界地图的多边形数据,这次将分省的多边形数据及省邻接数据分享给大家。画分省地图,还涉及到填色问题。本文也顺便介绍一下填色算法。数据的说明大体来说是每个省一个多边形,中国省级行政区严格来说有34个,但数据提供的多边形是33个。首先,在地图填色这个问题上,请允许我省略了香港和澳门两个特别行政区。另外,在北京和天津中间有一块河北省飞地,却大到了不能省略的地步。所以河北省包括2个多边形,如下图所示。给地图填色,有一个基本的规则就是相邻的两个省不能用同一种颜色。所以这里原创 2020-11-19 09:14:35 · 8312 阅读 · 0 评论 -
用Python画一个精确的中国地图(数据+代码10行)
数据来源气象级别的精度。下载地址:from CSDN或访问公众号:【橙实语】格式:文本文件读入方法:with open('china.txt','r', encoding='utf-8') as f1: china= eval(f1.read())数据内容:列表,内有三项,分别是大陆、海南岛、台湾岛的封闭多边形顶点值。数值:经纬度,浮点数。画图大多数作图工具都有画多边形的函数,直接调用即可。for shp in china: window['graph'].Dra.原创 2020-11-14 14:39:57 · 3976 阅读 · 1 评论 -
为什么说偏远山区的孩子,更适合学编程
所有在大城市给学生培训编程的机构,几乎都不约而同地打出一个同样的旗号:学编程不是为了当程序员。学编程不是为了当程序员城市的孩子有很多机会,他们学编程当然不是为了当程序员,就如同他们学钢琴不是为了当音乐家。他们学习编程是为了提升所谓思维能力,其实家长对提升思维能力的效果也无从评价,因为随着孩子年龄的增长,思维能力本身就在持续提升,你从何判断其中编程学习的作用有多少呢?但山区的孩子就不同了。众所周知,山区的发展落后,生活条件比较艰苦。而究其本质,就是山区的工作机会少。山区不能容纳很多年轻人就业,原创 2020-10-31 14:14:30 · 923 阅读 · 1 评论 -
python编程解数学方程(纯字符串格式)
用Python编程来解数学方程(纯字符串格式),没想到出人意料的简单。我们的目标是从字符串直接求解,而不是输入参数。例如:一次方程:3x+5=0二次方程:x^2+2x+1=0方程组:3x+5y=116x+5y=23解一次方程这是最简单的一种情况,这样一个简单的函数就可以实现def solv(func): p1, p2= func.split('=') a1, a2= p1.split('x') if a2=='': a2= '0' x= (原创 2020-10-28 08:02:51 · 2821 阅读 · 0 评论 -
任意表达式求值(算符优先算法)
这里写自定义目录标题任意表达式求值算符优先算符双栈算符定义处理逻辑如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入任意表达式求值任意表达式求值的算法是很常用的一个功能,虽然python有自带的eval,但必须基于python语法。而我们很多时候想创建自己的DSL,表达式原创 2020-10-24 11:00:10 · 1606 阅读 · 1 评论 -
为什么90%的python教程并不能帮助零基础小白
python是非常适合初学者的编程语言,它足够简单,屏蔽了很多技术细节;同时又足够强大,能实现丰富的功能;最关键的是python上不封顶,从玩具到专业工具,一线贯通。 可惜目前市场上的Python课程,90%以上只适合有编程基础的人来学。真正适合零基础小白的极少。说一下这两种学习者之间的差异,你就知道为什么学习教程很难互用。差异一:有编程基础的人,对于基本的编程逻辑已经了解,学习python在很多方面只看一下相关功能在python中是怎么写的就可以了,学习重点在python...原创 2020-08-07 09:59:25 · 159 阅读 · 0 评论 -
为什么看了那么多教程仍然学不会python?因为没有想明白这个问题
学会python很容易,唯一的重点是,学会这个语言对你有什么用?简单的说,python也是一种技能,增加一个技能是有成本的。这个成本不仅仅是学习过程所花费的时间、金钱和精力。更大的成本在于这一技能与你现有的知识架构怎样融合。我把它说的更形象一些,如果你开了一家公司,希望你的公司拥有python开发的技能,你所做的就是到市场上雇佣一名掌握python的程序员。你所考虑的肯定不仅仅是给他的工资福利待遇,更多的是雇佣他之后将给你带来怎样的利益,以及这个新员工和现有的团队怎样融合在一起成为一个更强大原创 2020-07-24 20:43:20 · 349 阅读 · 0 评论 -
理想的编程入门语言什么样?
一个理想的编程入门语言,应该有下面这三个特点: 首先它的语法应该足够简洁,让学习者可以容易抓住重点,专注于编程的逻辑,而不是繁琐的实现细节。 其次它应该有强大的功能,让初学者就能做出很多真正有兴趣的内容。 第三,我们希望这个语言在学习的时候,它是一个高级玩具;而当我们精通之后,它又可以成为实用工具。即使我们不从事软件开发的行业,它也可以在很多方面给我们带来帮助。让我们学习编程的时间投资,产生双倍的收益。 这三个特点python都具备,尤其是第三个,是python独一无二的特点...原创 2020-07-09 17:37:11 · 169 阅读 · 0 评论 -
用python一键生成动画(下)(含源码)
智力题《你是几班的?》上一篇重点讲解整体流程的组织,这篇讲细节的实现。有几个比较关键的技术文本转语音 图片的生成 图片组合为视频 音频视频融合 视频连接第一个技术这个技术比较成熟,直接使用了百度的语音接口。参考源代码和百度相关文档。须安装一个百度的库。python -m pip install urllib第二个功能,大量使用了PIL库来实现。后面几个,都是依靠ffmpeg来实现,详见相关的代码。最终实现在一个函数makeNovel(根路径, 图片资源路径, 剧本文.原创 2020-05-18 14:16:20 · 2907 阅读 · 0 评论 -
用python一键生成动画(上)
简介这种动画类型,我觉得可以叫做配音配画的小说。微型小说:多余的话第一篇文章,介绍一下设计过程的原理和流程,下一篇文章讲细节。整个生成过程的起点包括两个部分:小说文字和素材。当然这种小说最好是对话比较多的类型,才能体现出配音的意义。如果是景物描写、心理描写比较多的,用这种形式就不理想。实现过程,采用多步实现,每一步形成一个稳定的中间结果。这样做的好处是每步实现过程相对独立,便于局部改善。同时一个作品的形成过程中进行反复调试是难免的,针对中间结果进行调试可以节约时间。基本流程第零原创 2020-05-17 09:24:07 · 5039 阅读 · 1 评论 -
刑侦科推理题的手工解法与python解法
题解刑侦科推理题,不知是谁设计出来的,逻辑严整细致,有耐心看完题目的人就没几个。如果这真是刑警的日常考试题,我觉得他们实在是太厉害了,保证犯罪分子难逃法网。先上题目:说一下第10题是什么意思,第10题与第7题是相关联的,第7题问答案中出现次数最少的字母是谁,而第10题问是答案中出现次数最多的字母的出现次数与出现次数最少的字母的出现次数的差是多少。举例来说,如果答案中出现最多的是A,出现5次,出现最少的是C,出现1次,则差是4,第10题即选C。手工解法然后说手工解法,手工解法有很多入手点。基本的逻原创 2020-05-09 10:48:21 · 505 阅读 · 1 评论 -
用上市公司2019年报净利润数据验证本福特定律
在疫情期间,听到一个消息:有国外研究者用“本福特”定律验证了中国公布的疫情信息,显示数据是真实可信的。这是第一次听到这个名字,感觉很神奇,它竟然能够验证数据有无作假。上网查了一下,原来所谓本福特定律是指在自然状态下形成的一组数据,数字的首位分布应当符合一定的规律。具体来说从1到9的9个阿拉伯数字i,出现在首位的概率应当是:P(i)=log10((i+1)/i)。我于是很感兴趣,想用股票数据来验...原创 2020-05-06 13:27:01 · 1471 阅读 · 0 评论 -
从python之禅看复杂与抽象
《python之禅》中有一句话:Simple is better than complex.Complex is better than complicated.直接的翻译帮助不大:简单比复杂好,复杂比难懂的复杂好。我们尝试分析它的内在含义。第一句的意思相对好理解:如果能够让结构简单一些,就尽量简单一些。为什么?因为简单的结构鲁棒性更强。简单的结构适用性更广,在情况发生变化时,...原创 2020-04-30 09:57:12 · 488 阅读 · 0 评论 -
论抽象思维
所谓抽象思维,就是把一个问题变成很多问题。为什么我们希望把一个问题变成很多问题?因为现实世界是不断变化的。原创 2020-04-26 15:49:34 · 242 阅读 · 0 评论 -
零基础python入门GUI编程:2-3 多路分支
目前我们所学的知识:python语法:创建函数(1-2,2-1)数学计算(1-2,2-1)分支判断(2-2)常见类型:文本与整数、浮点数的类型互相转换(1-2)整数:进制转换(2-1)GUI模型:组件组件颜色(2-1)几何行列布局法(1-2)留白(2-2)事件按钮绑定事件(1-2)GUI类型:窗口(Tk):主窗口(1-1)标签(Label):用于提...原创 2020-04-24 08:23:03 · 314 阅读 · 0 评论