python字符串比较

python基础面试集锦(51-100)

南楼画角 提交于 2020-02-06 21:32:54
目录 51、把aaabbbcccdd这种形式的字符串压缩成a3b3c3d2的形式? 52、给你一个字符串'abc',打印出该字符串的所有排列组合? 53、执行以下代码后,x的值为? 54、对于一个非空字符串,判断其是否可以有一个子字符串重复多次组成,字符串 只包含小写字母且长度不超过 10000 55、从0-99这100个数中随机取出10个不重复的值? 56、介绍一下try except的用法和作用? 57、在python中如何抛出,捕获,处理异常? 58、enumerate的作用是什么? 59、python递归最大深度? 60、列举常见的内置函数? 61、filter、map、reduce的作用? 62、一行代码实现9x9乘法表? 63、什么是闭包? 64、用装饰器,限制函数被调用的频率,如1秒一次 65、请实现一个装饰器,通过 一次调用时函数重复执行5次 66、一行代码输出1-100偶数列表。(列表推导式,filter) 67、解释生成器与函数的不同,并实现和简单使用generator 68、写出打印结果? 69、简述yield和yieldfrom关键字 70、以下代码输出的结果? 71、以下代码输出结果? 72、从一个列表中剔除重复的,然后求和 73、map(str,[1,2,3])输出是什么? 74、请简述标准库中functools.wraps的作用 75

python 基础知识

邮差的信 提交于 2020-02-06 17:04:36
目录 1. 基础语法 1.1 注释 1.2 转义字符 1.3 缩进 1.4 标识符 1.5 语言类型 1.6 运算符 1.6.1 算术运算符 1.6.2 位运算符 1.6.3 比较运算符 1.6.4 逻辑运算符 1.6.5 赋值运算符 1.6.6 成员运算符 1.6.7 身份运算符 1.6.8 运算优先级 1.7 内建函数 1.8 循环语句 码好python的每一篇文章. ![](https://raw.githubusercontent.com/singvis/upload_image/master/img/python01.png) 1. 基础语法 1.1 注释 在编写代码的时候,有些代码不需要执行或增加代码说明,那么就需要用到注释了。 被注释的文本或代码是不会被执行的。 注释可以使用如下三种方式: # 号 # 第一个注释,本行代码不会运行 print("hello world!") # 第二个注释 ''' 三个单引号 也叫块注释,支持换行。 ''' 第一行注释,本行代码不会运行 第二行注释,本行代码不会运行 第三行注释,本行代码不会运行 ''' print('hello world!') """ 三个双引号 也叫块注释,支持换行。 """ 第一行注释,本行代码不会运行 第二行注释,本行代码不会运行 第三行注释,本行代码不会运行 """ print('hello world!'

Python学习07:使用dict和set

依然范特西╮ 提交于 2020-02-06 12:50:12
在FirstDemo中创建Directory,名为com.first.dict_set,然后在directory下创建Python文件,名为Demo06。 dict Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 举个例子,假设要根据同学的名字查找对应的成绩,如果用list实现,需要两个list: names = ['Michael', 'Bob', 'Tracy'] scores = [95, 75, 85] 给定一个名字,要查找对应的成绩,就先要在names中找到对应的位置,再从scores取出对应的成绩,list越长,耗时越长。 如果用dict实现,只需要一个“名字”-“成绩”的对照表,直接根据名字查找成绩,无论这个表有多大,查找速度都不会变慢。用Python写一个dict如下: >>> d = {'Michael': 95, 'Bob': 75, 'Tracy': 85} >>> d['Michael'] 95 为什么dict查找速度这么快?因为dict的实现原理和查字典是一样的。假设字典包含了1万个汉字,我们要查某一个字,一个办法是把字典从第一页往后翻,直到找到我们想要的字为止,这种方法就是在list中查找元素的方法,list越大,查找越慢。

Python内置函数

不想你离开。 提交于 2020-02-06 11:28:12
Duang! 68个内置函数 分类记忆 数学运算 × 7 abs() 、 divmod() 、 max() 、 min() 、pow() 、round() 、sum() 类型转换 × 24 bool() 、 int() 、 float() 、 complex() 、str() 、 ord() 、 chr() 、 bytearray() 、 bytes() 、 memoryview() 、 bin() 、 oct() 、 hex() 、 tuple() 、 list() 、 dict() 、 set() 、 frozenset()、 enumerate() 、 range() 、 iter() 、 slice() 、super() 、object() 序列操作 × 8 all() 、any() 、 filter() 、 map() 、next() 、reversed() 、sorted() 、zip() 对象操作 × 9 help() 、dir() 、 id() 、hash() 、type() 、len() 、ascii() 、format() 、vars() 反射操作 × 8 Import() 、isinstance() 、issubclass() 、hasattr() 、getattr() 、setattr() 、delattr() 、callable() 变量操作 × 2

python之文件读写

瘦欲@ 提交于 2020-02-04 04:06:25
本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 Python文件操作步骤示例 Python文件读取相关方法 文件读写与字符编码 一、I/O操作概述 I/O在计算机中是指Input/Output,也就是Stream(流)的输入和输出。这里的输入和输出是相对于内存来说的,Input Stream(输入流)是指数据从外(磁盘、网络)流进内存,Output Stream是数据从内存流出到外面(磁盘、网络)。程序运行时,数据都是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方(通常是磁盘、网络操作)就需要IO接口。 那么这个IO接口是由谁提供呢?高级编程语言中的IO操作是如何实现的呢? 操作系统是个通用的软件程序,其通用目的如下: 硬件驱动 进程管理 内存管理 网络管理 安全管理 I/O管理 操作系统屏蔽了底层硬件,向上提供通用接口。因此,操作I/O的能力是由操作系统的提供的,每一种编程语言都会把操作系统提供的低级C接口封装起来供开发者使用,Python也不例外。 二、文件读写实现原理与操作步骤 1. 文件读写实现原理 文件读写就是一种常见的IO操作。那么根据上面的描述,可以推断python也应该封装操作系统的底层接口,直接提供了文件读写相关的操作方法。事实上,也确实如此,而且Java、PHP等其他语言也是。 那么我们要操作的对象是什么呢

Python之文件读写

允我心安 提交于 2020-02-03 10:41:56
本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 Python文件操作步骤示例 Python文件读取相关方法 文件读写与字符编码 一、I/O操作概述 I/O在计算机中是指Input/Output,也就是Stream(流)的输入和输出。这里的输入和输出是相对于内存来说的,Input Stream(输入流)是指数据从外(磁盘、网络)流进内存,Output Stream是数据从内存流出到外面(磁盘、网络)。程序运行时,数据都是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方(通常是磁盘、网络操作)就需要IO接口。 那么这个IO接口是由谁提供呢?高级编程语言中的IO操作是如何实现的呢? 操作系统是个通用的软件程序,其通用目的如下: 硬件驱动 进程管理 内存管理 网络管理 安全管理 I/O管理 操作系统屏蔽了底层硬件,向上提供通用接口。因此,操作I/O的能力是由操作系统的提供的,每一种编程语言都会把操作系统提供的低级C接口封装起来供开发者使用,Python也不例外。 二、文件读写实现原理与操作步骤 1. 文件读写实现原理 文件读写就是一种常见的IO操作。那么根据上面的描述,可以推断python也应该封装操作系统的底层接口,直接提供了文件读写相关的操作方法。事实上,也确实如此,而且Java、PHP等其他语言也是。 那么我们要操作的对象是什么呢

01_python基础语法

。_饼干妹妹 提交于 2020-02-01 19:48:39
python基础语法 一.基本数据类型 Number:数字 int: 整数 float: 浮点数 '2/2’得到的是一个浮点类型的结果,'2//2’得到的则是一个整型的结果;例如: 1/2=0.5 1//2=0 bool: 布尔类型,表示真(True)和假(False),布尔类型属于数字,可以通过int(True)和int(False)将布尔类型转化为数字,也可以通过bool方法将数字转换为bool类型,例如: int(True)=1 int(False)=0 bool(10)=True bool(1.3)=True bool(0)=False bool方法还可以用做非空判断: bool('abc')=True bool('')=False bool([1,2,3])=True bool([])=False bool({1,1,1})=True bool({})=False bool(None)=False complex: 复数 str:字符串,可以使用单引号,双引号和三引号表示字符串 获取一个字符的ascii码值: ord("a")=97 多行字符串:使用三引号定义多行字符串 原始字符串:r’str’,原始字符串不会去识别转义字符,而是将其原样去输出 字符串运算: +:把两个字符串拼接起来 *:例如’hello’*3,表示把’hello’这个字符串重复3次

python整型-浮点型-字符串-列表及内置函数

删除回忆录丶 提交于 2020-01-31 20:53:13
整型   简介 # 是否可变类型: 不可变类型 # 作用:记录年龄、手机号 # 定义: age = 18 # --> 内部操作 age = int(18) # int('sada') # 报错 int(1.1) # int('1.1') # int() 只能转纯数字的字符串,小数点都不行 a = 11111 print(id(a)) a = 122121 print(id(a)) # 2250375207952 # 2250375207632 # id变了,所以是不可变类型     可变类型不可变类型 ''' 可变类型: 值改变的情况下,id不变,说明你改的是原值 不可变类型:值改变的情况下,id一定变 '''  进制转换     十进制转其他进制 1 # -------------- 十进制 --> 其他进制 ------------- 2 # 》》》 十进制转二进制 《《《 3 print(bin(12)) # 0b1100 0b表示后面的数字是二进制数 4 5 # 》》》 十进制转八进制 《《《 6 print(oct(12)) # 0o14 0o表示后面的数字是八进制14 >>> 1*(8**1) + 4*(8**0) 7 8 # 》》》 十进制转十六进制 《《《 9 print(hex(12)) # 0xC 0x表示后面的数字是十六进制数 10 11 # 0b1100

Leetcode(中文)笔记

纵饮孤独 提交于 2020-01-31 05:01:09
Leetcode(中文)笔记 最近在刷leetcode,顺便整理一下笔记,用于自我梳理。目前第一遍仅使用Python。 持续更新中。。。 双指针 26.删除排序数组中的重复项 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 暴力求解: class Solution : def removeDuplicates ( self , nums : List [ int ] ) - > int : i = 0 while i < len ( nums ) - 1 : if nums [ i ] == nums [ i + 1 ] : nums . pop ( i + 1 ) else : i += 1 return len ( nums ) 双指针法: 第一个指针:遍历数组,每遇到nums[j] != nums[i],就说明遇到了新的不同数字,记录之; 第二个指针:每遇到新的不同数字时,执行i += 1, i指针有两个作用:记录数组中不同数字的数量;作为修改数组元素的索引index。 最终,返回i+1即可。 class Solution : def removeDuplicates ( self , nums : List [ int ] ) -

Groovy基础语法

爱⌒轻易说出口 提交于 2020-01-30 10:05:40
1.Groovy中的变量 1.1、变量的类型:基本类型(java中的int,float,double,byte,char,long,short)和对象类型(String等) (Groovy中最终都是对象类型) int x = 10 println x.class //结果为:class java.lang.Integer double y = 3.14 println y.class //结果为:class java.lang.Double //由此可见,Groovy中的基本类型最终会被编译器包装成对象类型 1.2、变量的定义:强类型定义方式和弱类型def定义方式 def x1 = 10 def y1 = 3.14 def str = ‘groovy study’ println x1.class //class java.lang.Integer println y1.class //class java.math.BigDecimal println str.class //class java.lang.String //强类型定义及定义的时候写明变量的类型,而def则由编译器自行推导变量的类型 强类型定义方式和弱类型def定义方式的选择: 变量就是应用于自己的类或者自己的模块而不会应用于其它类或者其他模块,推荐使用def类型,这样可以随时动态的转换为其它类型;