范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

Python数据结构详解(一)

  学习一门语言,了解其数据结构是基础。由于Python是动态编程语言,所以在定义变量时并不需要事先指定变量的数据类型,变量的声明和初始化是同时进行的。
  Python有如下五大数据结构类型:
  1、Number类型
  2、字符串类型
  3、列表,元组
  4、字典
  5、集合
  下面我们逐一来了解一下~
  本篇详细介绍Number类型一、Number类型
  Number类型,又叫数字类型,是Python中最基本的数据结构类型,分为整数类型(如 1、2)、浮点类型(1.1、2.2)、复合类型(1+2j)及布尔类型(True、False)。1.1 整数类型1.1.1 整数类型表达方式
  整数类型表达方式有二进制、八进制、十进制与十六进制二进制:以"0B"或"0b"开头(比如0b101)八进制:以 "0o"或"0O"开头(比如0o510)十进制:比如10、29、40十六进制 :以"0x"或"0X"开头(比如0xA7A)
  不同进制的转换函数如下:x = 10 # 十进制转换为二进制,输出形式是字符串 y = bin(x) print(y, type(y)) # 十进制转换为八进制,输出形式是字符串 z = oct(x) print(z, type(z)) # 十进制转换为十六进制,输出形式是字符串 w = hex(x) print(w, type(w)) # 接收一个符合整型规范的字符串,并将字符串转换为整型 s = "111" r = int(s) print(r, type(r))
  输出结果:
  1.1.2 大整数
  Python语言非常牛X的一个特点就是可以处理大整数,别的语言可能需要通过字符串来转换(面试经常考),而Python不需要,因此Python基本不用担心数字溢出问题,这也是Python广泛应用在科学计算的主要原因。
  输出超过32位的整数,伸手就来print(2**40)
  再也不用考虑数字溢出问题了,人生苦短,我用Python!
  1.1.3 数字中支持下划线
  Python 3.6中引入的新特性,数字中支持使用下划线,方便阅读,字符串format方法也支持了 ‘_’ 选项,当格式化为浮点数或整数时,以3位分隔,当格式化为 ’b’ , ’o’ , ’x’ 和 ’X’ 时,以4位分隔x = 1_000_000_000_000 print(x) print("{:_}".format(100000000)) print("{:_b}".format(100000000)) print("{:_o}".format(100000000)) print("{:_x}".format(100000000)) print("{:_X}".format(100000000))
  1.2 浮点类型1.2.1 浮点类型表达方式
  浮点类型通俗来说就是小数。一般来说就以十进制表示(如1.1),对于很大或很小的浮点型,会自动转为科学计数法表示(如1e-05)
  科学计数法就是用字母e或E作为幂的符号,以10为基础。
  格式:xey表示的就是x乘以10的y次幂,例如: 1.2e-02:1.2乘以10的-2次幂 = 0.012 2e3:2乘以10的3次幂 = 2000x = 0.01 print(x) y = 0.00001 print(y) z = 10000000000000000.0 print(z)
  输出:
  1.3 复数类型1.3.1 啥是复数
  引入百度百科概念
  复数,是数的概念扩展。我们把形如z=a+bi(a、b均为实数)的数称为复数。其中,a称为实部,b称为虚部,i称为虚数单位。当z的虚部b=0时,则z为实数;当z的虚部b≠0时,实部a=0时,常称z为纯虚数。复数域是实数域的代数闭包,即任何复系数多项式在复数域中总有根。
  哈哈,说吧,是不是大学数学没有好好学~1.3.2 复数类型表达方式
  复数由"实部"和"虚部"两部分组成,实数部分和虚数部分都是浮点型,Python中表示复数的两种方法:a+bj,注意虚数部分需要加上 "j" 或者 "J"complex(a,b),其中a表示实部,b表示虚部x = 1 + 2j print(x, type(x)) y = complex(1, 2) print(y, type(y))
  获取复数的实部、虚部、共轭复数等(一般不搞科研也没必要知道~)x = 1 + 2j # 获取复数的实部,可以看到是浮点型 print(x.real)   # 获取复数的虚部,可以看到也是浮点型 print(a.imag) # 获取复数的共轭复数 print(a.conjugate())
  1.4 布尔类型1.4.1 布尔类型表达方式
  Python中布尔类型只有True和False两个取值,可以将这两个值翻译为"真"和假。1.4.2 布尔类型转换
  在Python中,每种类型都可以被解释为布尔类型,例如:None,0,"",[],(),{} 被解释为False;非零数值,非空字符串被解释为Trueprint(bool(None)) print(bool(0)) print(bool("")) print(bool([])) print(bool(())) print(bool({})) print(bool(10)) print(bool("hello"))
  而Python会将布尔类型True看作1,False看作0print(int(True)) print(int(False)) print(True + False + 10)
  这里需要注意的是,True是真的被当成1,False是真的被当成0,而像None,"",[] 之类的,是不能直接与布尔值比较的,只有通过bool() 函数才能变成真正的布尔值。
  这里使用二元运算符 "==" 进行判断print(1 == True) print(0 == False) print({} == False) print(bool({}) == False)
  1.5 数值运算与逻辑运算
  数值运算包括算术运算与位运算。
  算术运算有:加(+)、减(-)、乘(*)、除(/)、取余(%)、幂(**)、整除(//)。x = 10 y = 3 # 基本的算术运算 print(x + y) print(x - y) print(x * y) print(x / y) print(x % y) print(x // y)
  可以看到,运算符 "/" 和 "//" 的区别,"/" 是实际的除法,"//" 是向下取整除,这一点与C、Java不太一样,只能说Python一开始就考虑了数值计算的精度问题。
  位运算:执行位运算时会将整数转化为二进制形式,然后从最低位开始依次每位对齐,然后执行按位与(&)、按位或(|)、按位异或(^)、按位反(~)等操作。按位与,只有两个都为1时才为1,其他都为0;按位或,只要有一个为1结果为1,两个都为0时,结果才为0 ;按位异或时,两个相同是为0,两个不同时为1。按位反,原来为1,现在则为0,原来为0,现在则为1
  纸上得来终觉浅,绝知此事要躬行~,上栗子!# 二进制00000001 x = 1 # 二进制00000010 y = 2 # 基本的位运算 print(x & y) print(x | y) print(x ^ y) # 二进制11111110,涉及补码概念 print(~x)
  逻辑运算包括:关系运算、逻辑运算、身份运算。
  关系运算有:等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)x = 1 y = 2 print(x == y) print(x != y) print(x > y) print(x < y) print(x >= y) print(x <= y)
  逻辑运算:逻辑运算符主要用于判断多个条件之间的逻辑关系,例如是否都满足、只需满足一个等。Python中用not 表示逻辑非,and 表示逻辑与, or 表示逻辑或x, y, z = 1, 2, 3 if (x < y) and (y < z):     print("Yes") else:     print("No")  if (x < y) or (y > z):     print("Yes") else:     print("No")  if not (x < y):     print("Yes") else:     print("No")
  身份运算:身份运算符用于比较对象,不是比较它们是否相等,实际是看内存位置是否相等x, y, z = 1, True, 1 print(x == y) print(x is y) print(x is not y) print(x is z)
  从上面例子可以看出,虽然 True与1的值相等,但True并非1(内存位置不等),我们还可以看到,相同数值的变量是同一个对象,也就是说它们指向内存中同一个位置!1.6 常用数学函数
  Python内置了很多实用的数学函数,这里介绍下常用的7个函数,其他的用的时候再说吧
  函数名
  作用
  abs()
  返回数字的绝对值
  pmod()
  获取商和余数的元组
  sum()
  求和计算,对列表元组和集合等序列进行求和计算
  round()
  四舍五入,返回浮点数四舍五入的值
  pow()
  计算任意数n次方的值,与运算符"**"作用类似
  min()
  获取指定数值或者指定序列中最小值
  max()
  获取指定数值或者指定序列中最大值1.7 数字格式化输出
  在输出数字时候,有时候需要对其进行格式化操作,比如只希望保留2位小数,整数位按4位输出,不足补0,这时候我们就要用到format函数了。
  具体我们来看一组栗子~x = 1234.1234 # 保留2位小数 print(format(x, "0.2f")) # 每千分位用,分割 print(format(x, ",")) # 每千分位用,分割,并保留2位小数 print(format(x, ",.2f")) # 用科学计数法 print(format(x, "e")) # 用科学计数法,保留2位小数 print(format(x, "0.2E")) # 数字在12个字符长度区域内靠右对齐 print(format(x, ">12")) # 数字在12个字符长度区域内靠左对齐 print(format(x, "<12")) # 数字在12个字符长度区域内居中对齐 print(format(x, "^12")) # 数字在12个字符长度区域内靠右对齐,整数补0 print(format(x, "0>12"))
  下篇开始介绍字符串类型,欢迎点赞、关注~
  更多的Python学习资料,可以到这儿「链接」获取,持续不间断地免费更新Python资料~

唐山事件受害者家人沉默无言,打人者家属遭网暴不敢上学近日,唐山打人事件持续发酵,闹得沸沸扬扬,各大媒体争相报道,明星为其发声,全网都在为其主张正义,而受害者家属却保持沉默,自始至终都没站出来发声,并且具体伤情都依旧没有公布,这中间究网友的质疑明明住院两个,为什么只有一个女孩的图片?不解网友说,起身跑进巷子里的女孩才是伤得最重的。因为听到惨叫声大家都跑进去了。就连倒在地上血泊里的女孩都奋不顾身跑进去,一定是女孩遇到了更大的危险。紧接着就有人传出一个女孩已经死亡的消美国会推进立法对中国等被视为对手的国家投资进行审查华尔街日报13号援引国会助手和草拟文件报道,美国两党议员正在国会推进立法,可能会改写美国公司在海外投资的规则,提议对中国等被视为对手的国家的投资进行审查,以保护美国技术并重建关键供俄提议组建G8对抗西方G7,并公布8国名单建成后美国将失去霸权据环球网6月14日报道,俄国家杜马主席近日提议,随着美国主导的七国集团在俄乌冲突中对俄全面发难却遭致反噬,全球发展中国家应当趁势对不断危害全球经济的七国集团乘胜追击,应当组建八国集周扬青餐厅内抽烟引热议!吞云吐雾动作熟练,大口吸烟脸颊凹陷近日,有网友在自己的社交平台上晒出一段拍摄到周扬青与朋友聚餐的视频。画面中周扬青素颜出镜,戴着黑框眼镜十分随意。餐厅周围吃饭的人很多,但看得出来并没有人认出周扬青。接着,周扬青在与我对唐山事件的看法我认为被骚扰了,不能以更恶劣的手段去还击,君子不立于危险墙之下,正常人不管喝没喝多都不会去摸一个不认识的陌生女子,那么在众目睽睽之下进行骚扰一定是非等闲之辈的地痞流氓才会有的行为,同样演妈妈,把张雨绮董洁和吴越等演员放在一起看,差别出来了这两年,女性群像剧层出不穷,剧情总离不开几个话题年龄焦虑性别歧视家庭和工作的平衡婚姻困境育儿竞争。无论是哪一个话题,都是当下女性处境的真实写照。这不,又来了一部聚焦妈妈群体的电视剧部队开通WiFi,新消息过不了网络关就过不了时代关最近哨位君关注到部队WIFI的消息第77集团军某旅官兵在海拔4000多米的雪域高原驻训海拔高基站少造成通信困难为解决官兵用网问题该旅与中国移动公司携手在严1949年,40名女间谍潜入我军,欲与我军干部结婚,王震怎样处理?1949年8月26日,在兰州决战胜利后,中国人民解放军第一野战军在进军青海宁夏的同时,为准备进军新疆,兵锋直指甘肃河西走廊,对甘肃永登以西安西以东之武威张掖酒泉地区的国民党武装进行俄乌冲突给美军上了一课我们在太平洋面对中国,恐怕更惨正所谓一流军事专家谈后勤,二流军事专家谈装备。俄乌冲突中的俄军表现出乎外界预料的糟糕,除了装备过时和不合理的战术外,糟糕的后勤供应也成为俄军在对乌克兰特别军事行动第一阶段失败的主要贵州省最隐蔽的三线厂,数千人落根数十载,修理过1300架战斗机1965年毛主席提出备战建设号召,数万建设者远离都市,来到深山老林扎根,开始人生的又一次新征程,浩大的三线建设工程就此来开帷幕。贵州独特的地理位置,丰富的矿产资源,很适合建设以备战
豆豉怎样炒才能出香?怎么做比较好吃?豆豉是爱吃肉的央玛玛最爱的一味调料之一,这里不是老干妈豆豉那类即食的,是调料哪种,央玛玛给您支招首先,豆豉要买永川豆豉,颗粒不太硬,也不太软。为什么央玛玛要这么说,因为有时候买的豆虾仁饺子怎么调馅好吃?谢谢邀请虾仁饺子是我家里的最爱,基本家里包饺子都要包虾仁馅的三鲜饺子!我家里包虾仁饺子,一般搭配韭菜和猪肉的时候居多,偶尔也会搭配白菜或黄瓜。虽然各有各的味,但是感觉还是韭菜虾仁的电热水器是怎么样漏电死人的?很高兴为您解答。在我们日常生活中对电热水器相信大家都不是很陌生了,使用电热水器出现漏电甚至是漏电电死人的情况也是时有发生,但是这种情况其实并不是常见的,但是这种情况也是避免不了发生魔兽世界8。1版本最强坦克是哪个?魔兽世界坦克职业魔兽世界目前有六个坦克职业,在8。0版本中DKT在大秘境中的地位可以说是一骑绝尘,其他职业只能跟着后面吃灰,防战和熊德更是粪坑蝶泳两兄弟。随着8。1版本的开放,为了男人长期沉迷股市是什么心理?怎么能从中走出来?股市也是一个可以让人沉迷的地方,尤其是对那些性格内向没有其他爱好,但是智商又不低的人有很大的吸引力,智商高,想着这个地方能赚钱,这是个无本的买卖,相比去工作上班或者创业,需要专业能员工辞职会对老板带来多大的心理伤害?员工辞职对老板造成的心理伤害的大小,一般是微乎其微的。但这也要看公司的规模,员工的重要程度,以及领导的心理素质!一公司规模如果员工所在单位就几个,甚至夸张一点的只有自己和老板,如果有没有性价比极高的二手单反镜头?如果您喜欢小众相机,倒是有个品牌可以考虑。曾经的单反相机鼻祖,已经从神坛跌到土里,那就是宾得。从占有半壁江山的位子上,一路坚持自己的特点。直至被市场无情拋弃,宾得拥有成套的镜头群。女人为什么喜欢穿紧身裤?不单单是女人,男人现在大多也穿紧身裤,现在本来就不流行以前那种肥大的裤子了,那种腿肥裆深的。以前那种肥裤子,一来显得腿短,二来不美观,再一个就是不性感。除非那种大个子,穿着还比较好日常如何正确的护理私处?这个问题随然提得很尴尬,但每个人都有私密处。又不好和朋友们讲。所以每个人对私密处的护理都有讲究。如清洗,每天换内裤,无论男女都应该讲究卫生。减少疾病。对身体健康是最重要了。这是我个机关单位哪些岗位比较重要?呵呵,给你说点实在的吧,这些都是真正的权力处室(或科室)和实惠岗位,不展开说,应该都能够理解我的意思。看了看大家的回答,说得都有道理,不过官样化的解释不算少。公检法税务等强权部门自为什么现在还有很多人一心想要生男孩?我一儿一女,以前不觉得男孩重要,现在女儿高三,柔柔弱弱,手无缚鸡之力,儿子六年级,虎头虎脑,不挑食不挑穿,什么重活脏活都能干,想想有儿子安全感强多了,女儿我们必须保护她一辈子,儿子