Python

数据结构-二叉树(1)以及前序、中序、后序遍历(python实现)

上篇文章我们介绍了树的概念,今天我们来介绍一种特殊的树——二叉树,二叉树的应用很广,有很多特性。今天我们一一来为大家介绍。二叉树顾名思义,二叉树就是只有两个节点的树,两个节点分别为左节点和右节点,特别强调,即使只有一个子节点也要区分它是左节点还是右节点。常见的二叉树有一般二叉树、完全二叉树、满二叉树、线索二叉树、霍夫曼树、二叉排序树、平衡二叉树、红黑树、B树这么多种类。我们这篇文章中简单介绍一般二叉树、完全二叉树和满二叉树。一般二叉树很简单,只要满足子节点

系统 2019-09-27 17:47:38 2202

Python

python中的反斜杠问题深入讲解

前言python本身使用\来转义一些特殊字符,比如在字符串中加入引号的时候s='i\'msuperman'print(s)#i'msuperman为了防止和字符串本身的引号冲突,使用\来转义,一般情况下这个也不会引起什么问题,但是当你要使用\来转义\的时候,就比较混乱了,比如我们想要输出一个\,得写两个\,否则会报语法错误,因为\把后面的引号给转义了,必须使用\#错误写法#print'\'#正确写法print('\\')#\#原生字符串print(r'\\

系统 2019-09-27 17:46:09 2202

Python

Python中使用PIPE操作Linux管道

Linux中进程的通信方式有信号,管道,共享内存,消息队列socket等。其中管道是*nix系统进程间通信的最古老形式,所有*nix都提供这种通信方式。管道是一种半双工的通信机制,也就是说,它只能一端用来读,另外一端用来写;另外,管道只能用来在具有公共祖先的两个进程之间通信。管道通信遵循先进先出的原理,并且数据只能被读取一次,当此段数据被读取后,马上会从数据中消失,这一点很重要。Linux上,创建管道使用pipe函数,当它执行后,会产生两个文件描述符,分别

系统 2019-09-27 17:45:56 2202

Python

Python Django 前后端分离 API的方法

步骤根据之前的文章已经搭建好Django的目录开始流程运行manage.py文件#创建一个appstartappulb_managersettings.py文件中设置INSTALLED_APPS=[#加入这句话'apps.ulb_manager',]MIDDLEWARE_CLASSES=[#关闭掉跨域的一些验证,注释掉下面这句话#'django.middleware.csrf.CsrfViewMiddleware',]urls.py文件中注册接口fromd

系统 2019-09-27 17:45:32 2202

Python

Python函数和模块的使用总结

函数和模块的使用在讲解本章节的内容之前,我们先来研究一道数学题,请说出下面的方程有多少组正整数解。$$x_1+x_2+x_3+x_4=8$$事实上,上面的问题等同于将8个苹果分成四组每组至少一个苹果有多少种方案。想到这一点问题的答案就呼之欲出了。$$C_M^N=\frac{M!}{N!(M-N)!},\text{(M=7,N=3)}$$可以用Python的程序来计算出这个值,代码如下所示。"""输入M和N计算C(M,N)"""m=int(input('m=

系统 2019-09-27 17:38:21 2202

Python

浅谈python中的面向对象和类的基本语法

当我发现要写python的面向对象的时候,我是踌躇满面,坐立不安呀。我一直在想:这个坑应该怎么爬?因为python中关于面向对象的内容很多,如果要讲透,最好是用面向对象的思想重新学一遍前面的内容。这个坑是如此之大,犹豫再三,还是只捡一下重要的内容来讲吧,不足的内容只能靠大家自己去补充了。惯例声明一下,我使用的版本是python2.7,版本之间可能存在差异。好,在开讲之前,我们先思考一个问题,看代码:为什么我只创建是为a赋值,就可以使用一些我没写过的方法?可

系统 2019-09-27 17:38:17 2202

Python

【跟着Head First学Python】2、列表数据:处理有序数据

python自带了四种数据结构:列表、字典、元组、集合,本章主要介绍第一种:列表。列表:有序的、可变的对象集合动态的:长度可以随时变化异构的:数字与字符串等不同类型的变量可以存在一个列表里元组:有序的、不可变的对象集合简单来说就是一个常量列表。字典:无序的键值对集合就类似C++里面的map。注意字典增加元素的插入顺序没有任何意义。在一个字典中,键的值是唯一的。集合:无序的、唯一对象的集合类似C++中的set。但是是没有顺序的。1、in操作符使用in操作符来

系统 2019-09-27 17:55:09 2201

Python

Python内置高阶函数sort()与sorted()

一、内置函数sort()原型:sort(fun,key,reverse=False)参数:1、参数fun是表明此sort函数是基于何种算法进行排序的,一般默认情况下python中用的是归并排序,并且一般情况下我们是不会重写此参数的,所以基本可以忽略;2、参数key用来指定一个函数,此函数在每次元素比较时被调用,此函数代表排序的规则,也就是你按照什么规则对你的序列进行排序;3、参数reverse是用来表明是否逆序,默认的False情况下是按照升序的规则进行排

系统 2019-09-27 17:52:44 2201

Python

python使用writerows写csv文件产生多余空行的处理方法

初次接触python,学艺不精,第一次实战写一个文本处理的小程序时便遇到了头疼的问题。先看代码:生成的.CSV文件每两行之间都会多出一行空格(如下图),具体原因可参看点击打开链接withopen('E:\\test.csv','wt')asfout:cout=csv.DictWriter(fout,list_attrs_head)#list_attrs_head头属性列表cout.writeheader()cout.writerows(list_words

系统 2019-09-27 17:52:34 2201

Python

《Python编程--从入门到实践》--学习记录(十分钟带你回顾)

第二章1.python和c/c++在if语句使用上是有区别的(1)python:if条件:输出#注意,这里一定要有Tab空格,因为python语法就是按这样来理逻辑的else条件:输出(2)c/c++:if(条件){输出语句;}else{}python没有switch用法2.pythonshell中F键可以用来找关键词第三章1.(1)修改大小写–方法:title(),upper(),lower()(2)删除空白–方法:strip(),lstrip(),rs

系统 2019-09-27 17:52:13 2201

Python

详解Python3 pandas.merge用法

摘要数据分析与建模的时候大部分时间在数据准备上,包括对数据的加载、清理、转换以及重塑。pandas提供了一组高级的、灵活的、高效的核心函数,能够轻松的将数据规整化。这节主要对pandas合并数据集的merge函数进行详解。(用过SQL或其他关系型数据库的可能会对这个方法比较熟悉。)码字不易,喜欢请点赞!!!1.merge函数的参数一览表2.创建两个DataFrame3.pd.merge()方法设置连接字段。默认参数how是inner内连接,并且会按照相同的

系统 2019-09-27 17:51:27 2201

Python

python3.5 email实现发送邮件功能

本文实例为大家分享了python3.5email发送邮件的具体代码,供大家参考,具体内容如下直接套用代码即可fromemail.mime.textimportMIMETextfromemail.mime.imageimportMIMEImagefromemail.mime.baseimportMIMEBasefromemail.mime.multipartimportMIMEMultipartfromemailimportencodersimportsmt

系统 2019-09-27 17:51:12 2201

Python

推荐10款最受Python开发者欢迎的Python IDE

Python非常易学,强大的编程语言。Python包括高效高级的数据结构,提供简单且高效的面向对象编程。Python的学习过程少不了IDE或者代码编辑器,或者集成的开发编辑器(IDE)。这些Python开发工具帮助开发者加快使用Python开发的速度,提高效率。高效的代码编辑器或者IDE应该会提供插件,工具等能帮助开发者高效开发的特性。1.VimVim可以说是Python最好的IDE。Vim是高级文本编辑器,旨在提供实际的Unix编辑器‘Vi'功能,支持更

系统 2019-09-27 17:50:38 2201

Python

PyCharm找不到解释器no python interpreter

安装好PyCharm之后,新建或者导入项目碰到找不到解释器的情况,不用担心,追根到底,咱们就是需要找到pycharm*.exe的文件,那么这个文件在哪里呢?这是个问题。先打开File–>Setting–>Project,这时候看到选中栏显示的是Nointerpreter,在哪里找这个文件呢,不妨打开磁盘,直接搜索python.exe文件可能在C盘,也可能在其他磁盘,楼主找到的这个目录很奇怪,安装的时候竟然跑到SDK目录下面去了,不过还是找到你了。这时候回到

系统 2019-09-27 17:50:35 2201

Python

Python Numpy中 keepdims解释

importnumpyasnpa=np.array([[0,3],[1,4]])#a.shape是(2,2)#axis=1表示按行相加,并且保持其二维特性print(np.sum(a,axis=1,keepdims=True))#按行相加,不保持其二维特性print(np.sum(a,axis=1))输出为array([[3],[5]]),shape是(2,1)array([3,5]),shape是(1,2)

系统 2019-09-27 17:50:08 2201