字符串(str):字符串:一串不可变的字符序列特殊字符:为了描述字符的一些状态,例如换行,缩进等,使用特殊的字符组合表示该类信息,例如:\\\\n\t\r\‘\b\f\v\oxxx\xyy\b转义\回车制表符回车单引号退格换页纵向制表符8进制16进制二进制防转义:r"string"输出string原始字符,不会对其进行转义例如:print("d:\goproject\s
分类:
编程语言 时间:
2019-07-29 09:54:08
阅读次数:
88
在说深拷贝浅拷贝之前,先说一下什么是可变对象,什么是不可变对象 对象的数据是允许被修改的就是可变(mutable)对象,反之就是不可变(immutable)对象 例如像列表,字典就是可变对象,像字符串,数字,元组就是不可变对象 下面再来说拷贝,浅拷贝只拷贝最外层对象,深拷贝还会递归拷贝内层对象 当最 ...
分类:
其他好文 时间:
2019-07-28 13:53:18
阅读次数:
81
《Effective Java》第二章 创建和销毁对象第5条提到,在开发过程中,需要避免创建不必要的对象,最好能重用对象而非在每次需要的时候就创建一个相同功能的新对象。如果对象是不可变的,它就始终可以被重用,而不用创建新的实例,从而降低内存占用和垃圾回收的成本。例如,创建字符串 // Don't d ...
分类:
其他好文 时间:
2019-07-27 22:19:37
阅读次数:
166
1、字典 dict : 字典从3.6版本已经默认改成有序的 。 字典还是无序的 字典用 { } 来表示 里面有键值对数据 { key : value } 键 key : 要保证key唯一性(不能重复,不可以变)必须是可哈希的 不可变的数据类型就可以是字典的键 2、字典的新增: 1) 新增 dic={ ...
分类:
其他好文 时间:
2019-07-27 10:02:55
阅读次数:
117
值对象 对象要区分值对象还是实体对象(引用对象),值对象的使用一般在每一次出现的地方都是新的实例,可以对比基本类型一样,每一个基本类型,都是在内存中唯一分配;实体对象,基本上多对一的时候都是只存在一个对象实例,这个没有什么异议; 值对象应该有一个非常重要的特性,就是它是不可变的,所以如果值对象可变, ...
分类:
其他好文 时间:
2019-07-27 09:29:52
阅读次数:
92
? dict查找的性能远远大于list ? 在list中随着list数据的增大,查找时间会增大 ? 在dict中查找元素不会随着dict的增大而增大 dict的存储结构 ? dict的key或者set的值,都必须是可以hash的 ? 不可变对象,都是可以hash的,str、frozenset、tup ...
分类:
其他好文 时间:
2019-07-26 19:55:44
阅读次数:
100
# 变量:可以随时会更改的区域(标识符)# 常量:不能更改的区域(标识符) # 概述:# 程序可操作的存储区的名称。# 程序运行期间能改变的数据。# 每个变量都有特定的类型。# 作用:将不同类型的数据存储到内存。# 变量的定义:变量名 = 初始值(为了确定变量类型)# 注意:变量在使用前必须先’定义 ...
分类:
其他好文 时间:
2019-07-25 17:26:07
阅读次数:
86
浅拷贝:只拷贝第一层 深拷贝:拷贝所有数据(可变类型),一般发生在嵌套类型中 可变类型:列表,集合,字典 不可变类型:数字,布尔,字符串 特殊情况:元组是不可变类型 示例一: 浅拷贝时,只拷贝第一层,字符串类型是不可变类型(由于小数据池缘故)未重新拷贝不可变类型,深浅拷贝地址不变 示例二: 列表是可 ...
分类:
其他好文 时间:
2019-07-25 00:51:42
阅读次数:
121
StringBuffer和String的区别? 前者长度和内容可变,后者不可变。 如果使用前者做字符串的拼接,不会浪费太多的资源。 StringBuffer的构造方法: public StringBuffer():无参构造方法 public StringBuffer(int capacity):指定 ...
分类:
其他好文 时间:
2019-07-24 22:39:57
阅读次数:
145
抽象类的含义 被abstract修饰符修饰的类称为抽象类,当一个类中有抽象方法时必须被定义为抽象类,但抽象类中可以有非抽象的普通方法,也可以有普通成员变量,抽象类不能被实例化 继承抽象类的子类必须实现其所有抽象方法,否则该子类也要被定义为抽象类 接口的含义 接口由interface修饰符修饰,是抽象 ...
分类:
其他好文 时间:
2019-07-24 22:36:22
阅读次数:
90