自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 Python碎片日记18——迭代:文件迭代器、其他可迭代对象、手动迭代iter和next

迭代所有含有_next_方法(迭代协议)的对象都是可迭代的。可以通过next()来迭代的,叫迭代器。文件迭代器文件是可迭代的,并且本身就是迭代器例如readline():f = open('a.txt')line0 = f.readline() #读第一行line1 = f.readline() #读第二行...# 当最后一行时,返回空字符# 类似的_next_()也能实现...

2019-10-21 09:14:57 208

原创 Python碎片日记17——while循环、for循环、range、zip、enumerate

white循环

2019-10-18 09:53:28 188

原创 Python碎片日记16——赋值语句、命名原则、and/or、if-else三元表达式

赋值语句一些常用的赋值语句:序列赋值:元组可以和任意序列相互进行赋值运算,但注意被赋值的变量名数和序列长度要一致;扩展的序列解包:不带星号的变量赋值右面系列对应的一个元素,带星号的赋值多个剩余元素组合的列表(甚至可以是空列表),不带星号的变量可以多个(也可以没有,但必须在带星号变量后加逗号表明这是一个元组),可以任意位置,带星号的只能一个。这种方法也可以用于for循环中:增强赋值:增强...

2019-10-16 16:45:04 239

原创 Python碎片日记03——流重定向(stream redirection)、reload函数、载入属性、dir函数

流重定向(stream redirection)使用shell命令启动python程序,并将输出结果定向输出到一个文件中,从而保存起来以备以后查看或使用:% python script.py > saveit.txt同理,对于输入也可以使用流重定向:% python spam.py < input.txt摘自《Python学习手册》P56reload函数在默认情况下,...

2019-10-16 15:21:49 363

原创 Python碎片日记15——对象的比较、True&False、None、Type对象、一部分语句

对象的比较判断是否相等:“== ”、 “<”或“>” :比较值大小,返回True或False。 1. 对于数字:直接比较大小;2.对于字符串:按照字典序从左到右比较;3. 对于列表和元组:从左到右对每部分内容依次比较;4.字典不支持比较;5.混合类型不可比较“is ” :判断是否为同一对象True&False整数0代表假,整数1代表真。除此之外,数字如果非零...

2019-10-14 16:42:17 176

原创 Python碎片日记07——元组:方法;文件:基本操作、pickle块、struct块;集合set

元组tuple元组是序列,具有不可变性,支持任意类型、任意嵌套。(Python手册上讲,元组是不可变的序列。)它的不可变性是它存在的最大意义。元组专用方法没有列表辣么多T = (1, 2, 3, 4)T.index(4) # 返回内容为4 的序号,此处返回3T.count(4) # 返回内容为4 的出现次数文件没有特定的常量语法创建文件# 写文件f = open('data.t...

2019-10-12 10:58:17 112

原创 Python碎片日记14——字符串:代码转换、多次修改优化、格式化

代码转换ord('s')# 将单个字符转换为ASCII码chr(115)#将ASCII码转换为字符int('1101',2)#将字符串以2进制翻译成int多次修改优化由于字符串时不可变的,每进行一次修改就要产生一个新对象,如果对一个超长字符串进行多次修改,为了优化性能,可以先将字符串转化为可变的类型,在修改后再转换回来。S = 'sleeping'L = list(S)L[3] ...

2019-09-28 17:18:36 326

原创 Python碎片日记13——字符串:操作、反斜杠字符转义

在Python中,没有单个字符这种类型,只有使用一个字符的字符串。操作自动合并两个相邻字符串:t = 'ttdd''hhh'"ggd" #'ttddhhhggd't = ('ttd' 'vvv') #'ttdvvv'反斜杠字符反斜杠字符并不真正和字符串一起存储在内存中,它们告诉Python字符串中保存的特殊字节值。在Python中,空字符不会像C语言那样结束一个字符串,事实...

2019-09-04 09:56:44 1116

原创 Python碎片日记12——动态类型:变量&对象&引用、垃圾收集、缓存机制、循环引用、共享引用、拷贝方法(本文又称Python为什么这么强)

动态类型动态类型是Python中很重要的概念,是Python灵活性和多态性的基础。在Python中,类型并不需要提前进行声明,而是在运行中自动判定,这大大简化了编程的代码。那么它是如何实现的呢?变量&对象&引用在Python中,变量是在赋值的时候才创建的。...

2019-08-31 11:46:23 109

原创 Python碎片日记11——少见的数字类型:小数、分数、布尔

除整数、浮点数、复数三大核心数字类型外,Python还有一些不常用的数字类型:小数需要导入decimal模块。小数对象就像是浮点数,但是有固定的位数和小数点,即有固定精度。对于普通浮点数,由于存储数值的空间有限,是缺乏精确性的。对于以下例子:0.1 + 0.1 + 0.1 - 0.3 #输出结果为5.551115123125783e-17输出结果并不为0,存在一定缺陷。如果改用小数对象,...

2019-08-30 10:00:08 120

原创 Python碎片日记10——str和repr显示格式、三种除法、三种计算平方根方法、builtins模块

str和repr显示格式str()是用户友好式显示,repr()是交互模式回显(《Python学习手册》上写两者运行结果不同,但是我运行结果是一样的。。。)num = 1/3 repr(num) #输出'0.3333333333333333'str(num) #输出'0.3333333333333333'除法除法有三种类型:传统除法、真除法和Floor除法。传统除法对于整数会省去小...

2019-08-28 16:46:33 458

原创 Python碎片日记09——数字类型:表示方法、处理工具、操作符表达式(所有)

数字类型Python数字类型的完整工具包括:整数和浮点数复数固定精度的十进制数有理分数集合布尔类型无穷的整数精度各种数字内置函数和模块基本数字常量的表示方式:其中,浮点数精度和C中的双精度一样。Python3里的整数没有长整数和一般整数的区别(Python2的概念)。内置函数hex()、oct()和bin()可以把一个整数转换为十六进制、八进制和二进制。int(str...

2019-08-27 15:00:46 78

原创 Python碎片日记08——小数和分数(简要介绍);类型检验问题;用户定义类(简单例子)

小数和分数Python添加了一些新的数值类型:十进制和分数,用来解决浮点数学的局限性和内在的不精确性;布尔值:False、True、None(通常用来初始化名字和对象的占位符对象)...

2019-08-26 21:57:04 150

原创 Python碎片日记06——字典:创建方法、常用方法、字典视图、判断key是否存在、key的排序;迭代协议(简述)

字典

2019-08-26 09:39:00 153

原创 Python碎片日记05——列表:操作、边界检查、解析

列表操作除序列的基本操作外,列表还有许多特殊操作,详见help()。常见特殊操作有11个:L.append('NI') # 尾部插入L.pop(2) # 去除位置为2的元素L.remove('NI') # 去除内容为2的元素L.insert(2,'bb') #L.extend(itr) #尾部插入迭代器的内容L.sort() # 升序排列L.copy()L.count('bb...

2019-08-24 11:45:19 609

原创 Leetcode刷题日记02——初级算法数组篇122买卖股票的最佳时机 II

买卖股票的最佳时机II给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。示例...

2019-07-22 21:17:00 117

原创 Python碎片日记04——序列、可变性与不可变性、判断可变性的一个误区、主要对象类型的分类和可变性、对象灵活性

序列序列包括:字符串、列表和元组。序列的操作# s是一个序列len(s) # 获取长度s[0] # 索引s[1:3] # slice分片[I:J]取出从偏移量为I开始,直到但不包括偏移量为J的内容,左边默认为0,右边默认序列长度s + s # 合并s * 5 # 重复可变性与不可变性...

2019-07-22 20:14:04 230

原创 Python碎片日记02——zip()、lambda表达式、map()

并行遍历zip在基本运算中,zip会取得一个或多个序列为参数,然后返回元组的列表,将这些序列中的并排的元素配成对——摘自《python学习手册》P354,电子页码387##zip的用法a = [1,2,3]b = [3,4,5]list(zip(a,b))输出结果[(1, 3), (2, 4), (3, 5)]zip可以像range一样进行迭代:for (x,y) in zip...

2019-07-16 11:34:18 167

原创 C++碎片日记02——Debug断点

Debug断点在断点红点处右键,可以设置断点条件,从而提高中断判断的效率。详见微软官方c++入门

2019-07-15 16:25:46 85

原创 C++碎片日记01——形参、头文件报错、释放资源

引用形参的好处对于大型项目,引用形参省去复制的步骤,效率更高include对于一些标准头文件报错的原因可能是SDK没有配置好,项目——属性——配置属性——常规——windows SDK版本, 选择软件的SDK配置...

2019-07-15 16:18:17 109

原创 python碎片日记01——引号

单引号、双引号、三引号的区别在python中,单引号和双引号的功能一致,除了避免对应转义符外,几乎没有区别。所谓避免对应转义符,即是在双引号里的字符串含双引号时需要转义,在单引号里的字符串含单引号时需要转义,为了避免转义的麻烦,在遇到含单引号的字符串时最好用双引号,反之亦然。三引号(三对)的三单引号和三双引号的区别同上。三引号的功能有两个:长段注释的功能,用于书写某功能和类的解释。表示字...

2019-07-15 16:18:05 102

原创 Leetcode刷题日记01——初级算法数组篇26从排序数组中删除重复项

从排序数组中删除重复项给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例给定 nums = [0,0,1,1,1,2,2,3,3,4],函数应该返回新的长度 5, 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。if(nu...

2019-07-15 16:17:27 103

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除