set集合: •集合的创建; set_1 = set() #方法一 set_1 = {''} #方法二 •set是无序,不重复的集合; set_1 = {'k1','k2','k3'} set_1.add('k1') #往集合set_1中添加元素 set_1 = {'k1','k2','k3'} •set也可以直接将字典中的key给过滤出来放在集合中; dic_1 = {'k1':1,'k2':2} set_2 = set(a) #将字典a中的键放入集合b中 set_2 = {'k1','k2'…
集合 # 集合 ''' 集合是无序不重复的 ''' # 创建列表 l = list((1, 1, 1)) l1 = [1, 1, 1] print(l) print(l1) print("**************") # 创建集合 s = set('wjw') print(s, type(s)) print("-----------------") print(set("wjw")) print("+++++++++++++++++…
一.深浅拷贝 1.数字和字符串 对于 数字 和 字符串 而言,赋值.浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址. import copy # 定义变量 数字.字符串 # n1 = 123 n1 = 'jack' print(id(n1)) # 赋值 n2 = n1 print(id(n2)) # 浅拷贝 n3 = copy.copy(n1) print(id(n3)) # 深拷贝 n4 = copy.deepcopy(n1) print(id(n4)) 二.字典.元组.列表 对于字典.元…
本节的主要内容: 基础数据类型补充 set集合 深浅拷贝 主要内容: 一.基础数据类型补充 字符串: li = ["李嘉诚", "麻花藤", "⻩海峰", "刘嘉玲"] s = "_".join(li) print(s) # 李嘉诚_麻花藤_黄海峰_刘嘉玲 可以看出 join() 的作用是把列表中的字符串拼接起来,正好和 split() 相反 字符串转化成列表: split() 列表转化成字符串:join(…
目录 1. 基础数据类型补充 2. set集合 3. 深浅拷贝 1. 基础数据类型补充 (1)join方法 join方法是把一个列表中的数据进行拼接,拼接成字符串(与split方法相反,split方法是把一个字符串切割成列表) In [1]: l1 = ['a', 'b', 'c'] In [2]: s1 = '' In [3]: for i in l1: # 如果不使用join方法需要自己使用循环拼接成字符串 ...: s1 += i + '-' In [4]: s1.strip('-') O…
面向过程 VS 面向对象 面向过程 面向过程的程序设计把计算机程序视为一系列的命令集合,即一组函数的顺序执行.为了简化程序设计,面向过程把函数继续切分为子函数,即把大块函数通过切割成小块函数来降低系统的复杂度. 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优点是:极大的降低了写程序的复杂度,只需要顺着要执行的步骤,堆叠代码即可. 缺点是:一套流水线或者流程就是用来解决一个问题,代码牵一发而动全身.…
封装 广义上的封装,它其实是一种面向对象的思想,它能够保护代码;狭义上的封装是面向对象三大特性之一,能把属性和方法都藏起来不让人看见 私有属性 私有属性表示方式即在一个属性名前加上两个双下划线 class Fighter: def __init__(self,name,hp,atk,speed): self.name = name self.__hp = hp #私有属性 变形成self._Fighter__hp self.__atk = atk #私有属性 变形为self._Fighter__…
递归函数 定义 递归的定义——在一个函数里再调用这个函数本身 递归的最大深度——997,即栈溢出. 使用递归函数需要注意防止栈溢出.在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧.由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出. 递归栈的溢出 def func(n): print(n) n += 1 func(n) func(1) import sys print(sys.setrecursio…
初始编码 ASCII最开始为7位,一共128字符.最后确定8位,一共256个字符,最左边的为拓展位,为以后的开发做准备. ASCII码的最左边的一位为0. 基本换算:8位(bit) = 1字节(byte) 1024byte = 1 KB 1024KB = 1MB 1024MB = 1GB 1024GB = 1TB 电脑的传输还有存储实际上都是以二进制的形式进行的. Unicode:美国最初是使用ASCII编码,后来为了解决全球化的文字问题,创建了万国码(Unicode) 开端: 一个中文最初给两…
相关资料:https://www.cnblogs.com/rogge7/p/6078903.html 问题现象:在做一个判断时突然想到了C++的三目运算,就在想Delphi中一共有几个? 问题处理: Math.IfThen(True,1,2); //1StrUtils.IfThen(True, 'A', 'B');//AIdGlobal.iif(True, 1, 2);//1IdGlobal.iif(True, 'A', 'B');//AIdGlobal.iif(True, True, Fals…