我的算法之路20--位1的个数

class Solution(object): def hammingWeight(self, n): """ :type n: int :rtype: int """ cont=0 while(n>0): cont+=1 n=(n-1)&n return cont
分类: 其他 发布时间: 04-23 22:42 阅读次数: 0

我的算法之路22-- 帕斯卡三角形

class Solution(object): def generate(self, numRows): """ :type numRows: int :rtype: List[List[int]] """ if not numRows: return [] ln=[[1]] la=[1] for i in range(numRows-1): lb=[1] for j in range(1,len(la)): lb.append(la[j]+la[j-1]) lb.append(1) ln.a
分类: 其他 发布时间: 04-23 22:42 阅读次数: 0

第一章 引子

第一章 引子 写在开篇的话 写在开篇的话 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 老猿Python其实应该叫老猿学Python,只是为了简洁省了一个字,目的是将自己学Python的感悟记下来,和对Python感兴趣的人一起分享。 先自我介绍一下,本人是个有27年经验、年近50的老码农,1996年通过国家的高级程序员考试,学过和用过汇编、PASCAL、C++、D
分类: 其他 发布时间: 04-23 22:42 阅读次数: 0

第一节 学习环境搭建

第一节 学习环境搭建 应该有多种软件可以用于学习环境搭建,本人电脑硬件很差,WIN7的操作系统,4G的内存+I3的处理器,虚拟机都没办法运行,因此就用Python本身提供的环境,系统开销很小。 下载地址:https://www.python.org/downloads/,我下载的是最新版本3.73,而网上很多教程都是2.X版本的,还是有些差异,大家在老猿这儿就用3.73版本。下载完了之后直接运行默认安装,安装完了就可以使用了。使用的时候启动IDLE(Python 3.7 XX)(xx是指操作系
分类: 其他 发布时间: 04-23 22:41 阅读次数: 0

第二节 Python学习环境的使用

Python的环境安装好以后,可以通过IDLE(Python 3.7 64-bit)进入图形界面使用Python,也可以通过Python 3.7 64-bit进入命令行交互式界面,两者都可以使用,不过初学者建议使用IDLE图形界面。本讲内容都是基于WIN7 python3.7的版本来讲解。 一、 IDLE图形界面使用 交互式执行界面:在图形界面也支持交互式的Python命令执行,这个执行界面与非图形界面的交互式类似,但交互更友好,比如错误信息用红色字体等。 登录交互界面后,会出现命令行提示符:
分类: 其他 发布时间: 04-23 22:41 阅读次数: 0

第二章 Python编程基础知识 第三节 简单的Python数据类型、变量赋值及输入输出

第三节 简单的Python数据类型、变量赋值及输入输出 Python是一门解释性语言,它的执行依赖于Python提供的执行环境,前面一章介绍了Python环境安装、WINDOWS系列Python编辑和运行界面等内,这节就开始真正的语言学习了。本节介绍的内容是为了大家尽快开始使用Python编写简单的代码,是Python编程最基本的内容。 一、 Python的基础数据类型 学语言首先要知道语言的数据类型,Python数据类型比较多,本节只引入最基础的字符串(str)和整数(int)、浮点数(fl
分类: 其他 发布时间: 04-23 22:41 阅读次数: 0

第四节 Python的语句

上节已经介绍了极简的Python代码编写,已经用到了赋值语句,本节对Python的程序语句进行介绍。 一、 常用命令 在介绍Python语句之前,先介绍一下几个有用的Python命令。 dir(模块名或类名或变量名或表达式名):获得当前模块、变量对应类型、表达式计算值对应类的属性列表 type(变量名或表达式名):获取变量或表达式计算值的对应类型; help(类名)或help(类名.属性或方法名)或help(变量.属性或方法名),如:help(name.count):给出参数对应的帮助说明,需
分类: 其他 发布时间: 04-23 22:41 阅读次数: 0

第五节 运算符

一、 Python的算术运算 Python的算术运算符与C语言类似,略有不同。包括加(+)、减(-)、乘(*)、除(/)、取余(%)、按位或(|)、按位与(&)、按位求补(~)、左移位(<<)、右移位(>>)、单目求反(-)、幂运算(**)、整除运算(//)、增强运算、增强矩阵乘法(@)。 增强运算是将算术运算符或逻辑运算符放到等号的左侧,与C语言的增强运算符相同。如x+=5,表示x=x+5,该种方法CPU的处理效率高于普通运算方式,且执行优先级也高些。 下面看看这些运算的例子,大家可以理解一
分类: 其他 发布时间: 04-23 22:40 阅读次数: 0

经典教师 学生 成绩sql面试题再次来袭2(附答案)

概述续一下之前讲的sql练习方面内容,怕有些朋友找不到数据,所以这里把建表和准备数据部分也放着。建表语句CREATE TABLE students (sno VARCHAR(3) NOT NULL,  sname VARCHAR(4) NOT NULL, ssex VARCHAR(2) NOT NULL,  sbirthday DATETIME, class VARCHAR(5))CREATE T
分类: 数据库 发布时间: 04-23 22:40 阅读次数: 0

第三章 Python的数据类型 第六节 序列概述

一、概述 序列是Python中最基本的数据结构,C语言中没有这样的数据类型,只有数组有点类似,但序列跟数组差异比较大。 序列的典型特征如下: 序列使用索引来获取元素,这种索引方式适用于所有序列; 序列中的每个元素都有编号,即其位置或索引,其中第一个元素的索引为0,第二个元素的索引为1,依此类推; 序列的访问也可以从最后一个元素开始,它的序号是-1,倒数第二个是-2,依此类推。 Python内置了多种序列,最常用的是三种:字符串、列表和元组。列表和元组很类似,的主要不同在于表是可以修改的,而元组
分类: 其他 发布时间: 04-23 22:40 阅读次数: 0

第七节 列表简介

鉴于Python中列表(list)的强大功能,本节及后面至少有一节都是介绍列表相关的知识,本节先介绍基本的列表知识。 一、 列表的定义 列表是一种可以修改的序列,它有点类似于c语言中的数组,在Python中,列表用中括号来表示。 下列方式都是定义列表的方式 l1=[] # l1是空列表 l2=[1,2,3,4] #l2数字列表 l3=[1,2,3,‘a’,‘b’,‘c’] #l3数字和字母混合列表 l4=[‘Hello’,l2,l3] #l4是包含字符串和列表l2、l3作为元素的混合列表,对
分类: 其他 发布时间: 04-23 22:40 阅读次数: 0

第八节 强大的列表

一、 列表切片操作补充 列表切片支持所有序列切片的方法,以倒序切片和步长大于1的情况再举例验证一下: l=[1,2,3,4,5] l[::2] #结果[1, 3, 5] l[-1::2] #结果[5] l[-1::-2] #结果[5, 3, 1] 其他序列已有的切片方法在列表中同样适用,这里就不举例说明了。 通过切片赋值:当给切片赋值为与切片个数相同的元素数量的列表时,实际上就是将切片指定的元素替换为新列表的内容。举例: c=[1,2,3,‘a1178’,‘b210’,‘c3112’] c[2
分类: 其他 发布时间: 04-23 22:40 阅读次数: 0

第九节 泛善可陈的元组

本来计划是列表还要讲一节列表解析,另外列表的内容介绍完之后就讲元组、再之后是字符串,将序列的内容讲完。考虑到列表解析的内容比较复杂,字符串功能很强大,内容比列表还多,因此接下来先介绍元组、然后介绍字典,再讲列表解析和字典解析,最后再讲字符串。 一、 概念 元组(tuple)是不可修改的序列,元组的元素之间用逗号分隔,外面可以加小括号,也可以不加。如下例子都是元组: t1=1,[‘a’,‘n’,‘c’],‘abc’ #包含三个元素的元组,第二个元素是个列表 t1=(1,[‘a’,‘n’,‘c’]
分类: 其他 发布时间: 04-23 22:39 阅读次数: 0

第十节 丰富的字典操作

一、 基本概念 Python提供一种通过名称来访问其各个值的数据结构,这种数据结构称为映射(mapping)。字典(dict)是Python中唯一的内置映射类型,其中的值不按顺序排列,而是存储在键下,键可能是数、字符串或元组。 字典由键及其相应的值组成,键可以是任何不可变的类型,这种键-值对称为项(item)。每个键与其值之间都用冒号(:)分隔,项之间用逗号分隔,而整个字典放在花括号内。空字典(没有任何项)用两个花括号表示。 字典支持一个键对应多个值。 二、 操作方法 1、 创建字典的方法 创
分类: 其他 发布时间: 04-23 22:39 阅读次数: 0

第十一节 字符串基础知识

一、 引言 前面第二章已经接单介绍了字符串,本来计划讲完列表解析和字典解析再来精讲字符串的内容,但发现要讲列表解析和字典解析需要介绍迭代器和生成器,这个概念比较复杂,老猿还需要复习和验证一下才能完全掌握。因此现在先讲字符串,字符串内容比较多,估计至少讲3节。 二、 概念 第二章介绍了使用单引号、双引号、三引号(三个单引号)进行标记的字符序列定义的变量都是字符串。在此说明一下三者的异同: 三者都是字符串,大部分情况下是相同的; 当字符串本身包含了单引号时,该字符串只能使用双引号和三引号; 当字符
分类: 其他 发布时间: 04-23 22:39 阅读次数: 0

第十二节 再说字符串

一、 字符串补充知识 1. 上节介绍的三引号是三个单引号,经查有关资料及验证,确认三个双引号也可以。非常抱歉误导大家了; 2. 原始字符串:原始字符串就表示字符串中的信息如果存在反斜杠不会进行转义,直接将反斜杠(\)作为一个字符串中的字符。但原始字符串不能以单个反斜杠结尾,如果要指定以反斜杠结尾的原始字符串(如以反斜杠结尾的DOS路径),是将反斜杠单独作为一个字符串。原始字符串在普通字符串前加前缀r表示。示例: rs = r'C:\Program Files\foo\bar\n'+'\\'
分类: 其他 发布时间: 04-23 22:39 阅读次数: 0

第十三节 使用百分号占位符的字符串格式化方法

一、 概念 格式化字符串就是将一些变量转换为字符串并按一定格式输出字符串,包括指定字符的位置、对齐方式、空位补充方式等。Python提供了多种字符串格式设置方法。本节先介绍一种简单的方法。 格式化字符串时,指定字符串格式化输出格式的字符串称为“格式字符串”。在使用字符串格式化方法时,在格式字符串内使用特定符号及其后面的格式及类型指定的串称为“格式符”或“转换说明符”,格式符的标记符号称为“占位符”,格式符对应的真实输出数据称为“真实值”。在使用百分号%的字符串格式化方法时,百分号就是占位符,占
分类: 其他 发布时间: 04-23 22:38 阅读次数: 0

第十四节 使用模板字符串的字符串格式化方法

一、 引言 上节介绍了使用百分号占位符的字符串格式化方法,看起来功能很强大,但存在两个问题: 1、 在字符串格式化时必须知道变量的类型才能调用相应的格式化类型编码(如%s,也称为转换说明符),当变量类型发生变化时,需要一个个去查找格式化字符串修改对应的格式化类型编码; 2、 当格式化字符串的百分号占位符比较多时,不容易找到占位符与后面真实值之间的对应关系。 模板字符串的这种解决方案就是为了解决这两个问题提出的。 二、 模板字符串的操作方法 1. 从string模块引入模板方法 from str
分类: 其他 发布时间: 04-23 22:38 阅读次数: 0

如何解决post和get乱码问题

解决 post 请求乱码:对于 get 请求中文参数出现乱码解决方法有两个 1. 修改 tomcat 配置文件添加编码与工程编码一致。 2. 另 外 一 种 方 法 对 参 数 进 行 重 新 编 码 String userName = New String(Request.getParameter(“userName”).getBytes(“ISO8859-1”), “utf-8”); 3. 我们可以在 web.xml 里边配置一个 CharacterEncodingFilter 过滤器。
分类: 其他 发布时间: 04-23 22:37 阅读次数: 0

java中异常分哪些种类

Java Exception: 1、Error 2、Runtime Exception 运行时异常 3、Exception 4、throw 用户自定义异常 异常类分两大类型:Error类代表了编译和系统的错误,不允许捕获;Exception类代表了标准Java库方法所激发的异常。Exception类还包含运行异常类Runtime_Exception和非运行异常类Non_RuntimeException这两个直接的子类。 运行异常类对应于编译错误,它是指Java程序在运行时产生的由解释器引发的各
分类: 其他 发布时间: 04-23 22:37 阅读次数: 0