基本数据类型补充,深浅copy】的更多相关文章

1.基本数据类型补充 2.深浅拷贝 DAY7-基本数据类型(基本数据类型补充&深浅拷贝) 本节主要内容: 1.补充基础数据类型 (1)join方法 (2)split方法 (3)列表不能在循环时删除,因为索引会发生改变 (4)字典不能直接删除,要把删除的内容先记录在列表中,循环列表,删除字典中的数据 (5)fromekeys()不会对原来的字典产生影响,面试常考题(巨坑) 2.深浅拷贝部分 (1)=从上到下只有一个列表创建 (2)copy 等价于[:]切割 (3)引入一个模块:import cop…
一:关于str 的操作方法补充 1,s.isspace()   判断字符串是否只由空格组成,是,为True,否则,为False. s = ' ' #只能是以至少一个空格组成的字符串(全空格) print(s.isspace()) 二:关于tuple类型的补充 当元组只有一个元素组成并且没有逗号,则该元素是什么数据类型,整体就是什么数据类型. tu = ('alex') tu1 = ('alex',) print(tu,type(tu)) print(tu1,type(tu1)) tu = ([1…
一.内容回顾 代码块: 一个函数,一个模块,一个类,一个文件,交互模式下,每一行就是一个代码块. is == id id()查询对象的内存地址 == 比较的是两边的数值. is 比较的是两边的内存地址. 小数据池: 前提:int,str,bool 1,节省内存. 2,提高性能和效率. 小数据池是什么? 在内存中,创建一个'池',提前存放了 -5 ~256 的整数,一定规则的字符串和bool值. 后续程序中,如果设置的变量指向的是小数据池的内容,那么就不会再内存中重新创建. 小数据池与代码块的关系…
1.数据类型的补充 1.1 元组 当元组里面只有一个元素且没有逗号时,则该数据的数据类型与括号里面的元素相同. tu1 = ('laonanhai') tu2 = ('laonanhai') print(tu1, type(tu1)) print(tu2, type(tu2),) tu1 = (1) tu2 = (1,) print(tu1, type(tu1)) print(tu2, type(tu2)) tu1 = ([1, 2, 3]) tu2 = ([1, 2, 3],) print(t…
1,数据类型的补充: 元组()tuple,如果只有元素,并且没有逗号,此元素是什么数据类型,该表达式就是什么数据类型. tu = ('rwr') print(tu,type(tu)) tu = ('rwr',)#('rwr',) <class 'tuple'> print(tu,type(tu)) list列表,在循环一个列表时,最好不要进行删除动作,一旦删除,索引就会随之改变,容易出错. li = ['老男孩','alex','拉黑米','老男孩','老男孩','天上人间'] #删除索引为奇…
因为重要,所以放前面 列表去重 l1 = [1, 2, 3, 4, 5] l2 = [3, 4, 5, 6, 7] set = list(set(l1 + l2)) # set自动去重,然后变成list类型 print(set) # [1, 2, 3, 4, 5, 6, 7] 1. id    is    == == 是比较的两边的数值是否相等,而 is 是比较的两边的内存地址是否相等. 如果内存地址相等,那么这两边其实是指向同一个内存地址. l1 = [1, 2, 3] l2 = [1, 2,…
一.基础数据类型的补充 元组: 如果元组中只有一个数据,且没有逗号,则该‘元组’数据类型与里面的数据类型一致 列表: 列表之间可加不可减,可跟数字相乘 l1=['wang','rui'] l2=['chen'] l3=l1+l2 print(l3) 将列表中索引为奇数的元素,全部删除: l1=[11,22,33,44,55,66,77,88] l2=[] (1)del l1[1::2] print(l1) (2)for i in l1: if i % 2 ==1: l2.append(i) l1…
首先回顾: 小数据池:int -5~256str 特殊字符,*数字20 ascii : 8位 1字节 表示1个字符unicode 32位 4个字节 表示一个字符utf- 8 1个英文 8位,1个字节 欧洲 16位 两个字节 表示一个字符 亚洲 24位 三个字节 表示一个字符 gbk 1个英文 8位,1个字节 亚洲 16位 两个字节 表示一个字符 s = 'alex'b = s.encode('utf-8')print(b) # b'alex' 1,基础数据类型汇总补充 lis = [11,22,…
集合 集合是无序的,不重复的数据集合,它里面的元素是可哈希的(不可变类型),但是集合本身是不可哈希(所以集合做不了字典的键)的.以下是集合最重要的两点: 去重,把一个列表变成集合,就自动去重了. 关系测试,测试两组数据之前的交集.差集.并集等关系. #关于集合和波尔值之间的苟苟且且# set ={1,2,3,4,5,True,(1,2,3),} #集合具有自动去重和去空格功能# set.add(False)# set.add(True) #打印结果显示,没有Teue,应该是集合内部的数字和元组不…
一 . join的用法 lst =['吴彦祖','谢霆锋','刘德华'] s = '_'.join(lst) print(s) # 吴彦祖_谢霆锋_刘德华 # join() "*".join("吴彦祖") # 吴*彦*祖 把传递进去的参数进行迭代. 获取到的每个元素和前面的*进行拼接. 得到的是字符串 split() 切割. 切割的结果是列表 二 . 对正在循环的列表或者字典的删除方法 列表和字典: 都不能在循环的时候直接删除 把要删除的内容记录在新列表中然后循环这…
#str s=' ' #只能是以至少一个空格组成的字符串(全空格) print(s.isspace()) #tuple 当元组只有一个元素组成,并没有",",则该元素是什么数据类型,整体就是什么数据类型 tu = (1) tu1 = (1,) print(tu,type(tu)) print(tu1,type(tu1)) #list # l1 = [111,222,333,444,555] 将索引为奇数位的元素删除 # 方法一: l1 = [111,222,333,444,555] l…
一 . join的用法 lst =['吴彦祖','谢霆锋','刘德华'] s = '_'.join(lst) print(s) # 吴彦祖_谢霆锋_刘德华 # join() "*".join("吴彦祖") # 吴*彦*祖 把传递进去的参数进行迭代. 获取到的每个元素和前面的*进行拼接. 得到的是字符串 split() 切割. 切割的结果是列表 二 . 对正在循环的列表或者字典的删除方法 列表和字典: 都不能在循环的时候直接删除 把要删除的内容记录在新列表中然后循环这…
一.基础数据类型汇总补充 list  在循环一个列表时,最好不要删除列表中的元素,这样会使索引发生改变,从而报错(可以从后向前循环删除,这样不会改变未删元素的索引). 错误示范: lis = [,,,,] for i in range(len(lis)): print(i) # i = i = i = del lis[i] print(lis) # [,,,,] [, , ] [, ] lis = [11,22,33,44,55] 取一个新的列表 lis = [11,33,55] #第一种 li…
一.基础数据类型补充 1.join() 把列表中的每一项(必须是字符串)用字符串拼接 与split()相反 lst = ["汪峰", "吴君如", "李嘉欣", "陈慧琳", "关之琳"] # 遍历列表. 把列表中的每一项用"_" 做拼接 s = "_".join(lst) # 把列表转化成字符串 print(s) s1 = "汪峰_吴君如_李嘉欣_陈慧琳_…
思维导图: 集合的补充:下面的思维导图有一个点搞错了,在这里纠正一下,没有合集,是反交集,^这个是反差集的意思 . 交集&,反交集^,差集-,并集|,然后就是子集和超集 数据类型补充: ''' 1,int 2,str 3,tuple tu = (1) tu1 = ('name',) print(tu,type(tu)) # 1 <class 'int'> print(tu1,type(tu1)) tu = ('dfas') tu1 = ('name',) print(tu,type(t…
一.元组转换 数字 tu = (1) tu1 = (1,) print(tu,type(tu)) print(tu1,type(tu1)) 执行输出: 1 <class 'int'>(1,) <class 'tuple'>  字符串 tu = ('lao') tu1 = ('lao',) print(tu,type(tu)) print(tu1,type(tu1)) 执行输出: lao <class 'str'>('lao',) <class 'tuple'>…
一.基本数据类型补充 1,关于int和str在之前的学习中已经介绍了80%以上了,现在再补充一个字符串的基本操作: li = ['李嘉诚','何炅','海峰','刘嘉玲'] s = "_".join(li) print(s) # 结果为:李嘉诚_何炅_海峰_刘嘉玲 li = '黄花大闺女' s = "_".join(li) print(s) # 结果为:黄_花_大_闺_女 2,列表相关: 循环删除列表中的每一个元素,有如下代码,注意结果并分析原因: li = [11…
一.基本数据类型补充 1,关于int和str在之前的学习中已经介绍了80%以上了,现在再补充一个字符串的基本操作 str.join(可迭代对象): li = ['李嘉诚','何炅','海峰','刘嘉玲'] s = "_".join(li) print(s) # 结果为:李嘉诚_何炅_海峰_刘嘉玲 li = ['h','e','l','l','o'] s = "".join(li) print(s) # 结果为:hello li = '黄花大闺女' s = "…
一.数据类型补充1,对于元组:如果只有一个元素,并且没有逗号,此元素是什么数据类型,改表达式就是什么数据类型. tu = () tu1 = (,) print(tu,type(tu)) #1 <class 'int'> print(tu1,type(tu1)) #(1,) <class 'tuple'> 2,对于list,在循环一个列表时,最好不要进行删除的动作(一旦删除,索引会随之改变),容易出错.增加同理 li = [,,,,,] 将索引为奇数的元素删除. del li[::]…
本节主要内容:1. 基础数据类型补充2. set集合3. 深浅拷贝主要内容:一. 基础数据类型补充首先关于int和str在之前的学习中已经讲了80%以上了. 所以剩下的自己看一看就可以了.我们补充给一个字符串基本操作 li = ["李嘉诚", "麻花藤", "黄海峰", "刘嘉玲"] s = "_".join(li) print(s) li = "黄花大闺女" s = "_&q…
1. 基础数据类型补充 li = ["李嘉诚", "麻花藤", "⻩海峰", "刘嘉玲"] s = "_".join(li) print(s) li = "⻩花⼤闺⼥" s = "_".join(li) print(s) 列表: 循环删除列表中的每⼀个元素 li = [11, 22, 33, 44] for e in li: li.remove(e) print(li…
一.基础数据类型补充 1. "拼接字符串".join(可迭代对象) 可迭代对象为列表时,输出列表元素与拼接字符串的拼接 li = ['张三', '李四', '王五', '赵四'] s = '_'.join(li) print(s)输出:张三_李四_王五_赵四 可迭代对象为字符串时,输出单个字符与拼接字符串的拼接 li = 'asdfgh' s = '_'.join(li) print(s)输出:a_s_d_f_g_h 2.列表与字典的删除补充 列表和字典在迭代过程中无法进行删除操作,需…
一:对之前知识点的补充 1;字符串(str)中的join方法.把列表转换成字符串 2;列表list[ ]和字典dic{ }在循环过程中不能字节删除.需要把要删除的内容记录在新列表中.然后在循环新列表,删除字典或列表 3;fromkeys( ) 返回新字典,对原字典没有影响 后面的value,是多个key共享一个value 二:set集合 特点: 无序,不重复,元素必须可哈希(不可变) 作用: 去重复 本身是可变的数据类型, 有增删改查操作 frozenset( ) 冻结的集合,可哈希 ,不可变.…
一.集合:类似列表,元组的存储数据容器,不同点是不可修改,不可重复.无序排列. 1.创建集合: (1).set1 = {'abby', 'eric'} result:{'eric', 'abby'} (2).set2 = set({'abby', 'eric'}) result:{'abby', 'eric'} 2.增 set1 = {'abby','eric','allan','davy','skye'} (1).set1.add('west') result:{'west','abby','…
十二.基础数据类型补充: 1.join 可以把列表变成字符串. s = ‘abc’ s1 = s.join(‘非常可乐’) print(s1)  #非abc常abc可abc乐abc s = "_" s1 = s.join(['alex','wusir','taibai','ritian']) print(s1)   #alex_wusir_taibai_ritian 数据类型的转换:str-àlist:split list -àstr:join 其他类型的转换都是用括号括起来 2. #…
深浅copy以及赋值 对于字符串和数字而言,赋值.浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址. import copy n1 = #n1 = 'hahahaha' #赋值n2 = n1#浅copy n3 = copy.copy(n1) #深copyn4 = copy.deepcopy(n1)print(id(n1),id(n2)) #打印内存地址5787536 5787536print(id(n1),id(i3))5787536 5787536print(id(n1),id(n4))57…
1.day 06 内容回顾 小数据池 int :-5-256 str:特殊字符 ,*20 ascii:8位 1字节 表示一个字符 unicode:32位 4个字节 , 表示一个字符 字节表示8位表示一个字节,字符表示组成的最小元素 utf-8 1个英文字母 8位 1个字节 欧洲 16位 两个字节 表示一个字符 亚洲 24位 三个字节 表示一个字符 gbk 1个英文字母 8位,1个字节 亚洲 16 位 两个字节表示一个字符 s = 'alex' b = s.encode('utf-8') prin…
一 数据类型定义及分类 我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大,但从某种角度上看又很傻,除非你明确的告诉它,1是数字,“汉”是文字,否则它是分不清1和‘汉’的区别的,因此,在每个编程语言里都会有数据类型,其实就是对常用的各种数据类型进行了明确的划分,你想让计算机进行数值运算,你就传数字,你想让他处理文字,就传字符串类型.以下为查看数据类型的方法. >>> a= 2**64>>> type(a) #type()是查看数据类型的方法&…
一.基础数据类型的坑: 元组: 如果一个元组中,只有一个元素,且没有逗号,则该"元组"与里面的数据的类型相同. # 只有一个数据,且没有逗号的情况: print(tu1,type(tu1)) # 156 <class 'int'> tu2 = ("expected") print(tu2,type(tu2)) # expected <class 'str'> 那么,在只有一个元素的情况下,如何让元组成其为元组呢?方法就是,在数据的后面,加一个…
一.基础数据类型的扩展 1.1GBK ---> UTF - 8 # str --->bytes s1 = '太白' # 字符串是unicode编码 b1 = s1.encode('gbk') # 翻译成gbk编码的形式 print(b1) # b'\xcc\xab\xb0\xd7' 两位 s2 = b1.decode('gbk') # 解码成字符串 print(s2) b2 = s2.encode('utf-8') # 翻译成UTF- 8编码的形式 print(b2) # b'\xe5\xa4…