当前位置: 首页 > news >正文

广东省建设监理协会官方网站半江红网站建设

广东省建设监理协会官方网站,半江红网站建设,丹阳建设局官方网站,公司自己建立网站1. 列表和元组 1.1 列表和元组的定义 编程中#xff0c;如果代码中需要表示的数据个数比较少, 我们直接创建多个变量即可 但有时, 代码中需要表示的数据特别多, 甚至也不知道要表示多少个数据. 这个时候, 就需要用到列表 Python 中列表是一种有序、可变的数据结构#xf…1. 列表和元组 1.1 列表和元组的定义 编程中如果代码中需要表示的数据个数比较少, 我们直接创建多个变量即可 但有时, 代码中需要表示的数据特别多, 甚至也不知道要表示多少个数据. 这个时候, 就需要用到列表 Python 中列表是一种有序、可变的数据结构可以批量存储不同类型的元素 而元组和列表相比, 是非常相似的, 只是列表中的元素可以修改调整, 元组中的元素是创建元组的时候就设定好的, 不能修改调整 1.2 创建列表和元组 创建列表和元组主要有两种方式 # 创建列表 # 法一 # []表示一个空列表 alist [] print(type(alist)) # 如果需要设置初始值直接写在[]中 # 列表中存放的元素允许是不同的类型 alist [1,hello,True,4,5] print(alist)# 法二 # list 本身是 Python 中的内建函数, 不宜再使用 list 作为变量名 alist list() print(type(alist))# 创建元组 # 法一 atuple () print(atuple)# 法二 # tuple 本身是 Python 中的内建函数, 不宜再使用 tuple 作为变量名 atuple tuple() print(atuple) 1.3 访问下标 可以通过下标访问操作符 [ ] 来获取到列表中的任意元素我们把 [ ] 中填写的数字, 称为 下标 或者 索引 alist [1,2,3,4,5] print(alist[1]) # 下标是从 0 开始计数的, 因此下标为 1 , 则对应着 2 这个元素# 下标的有效范围是 [0, 列表长度 - 1]. 使用 len 函数可以获取到列表的元素个数 alist [1,2,3,4,5] print(len(alist))# 通过下标可以读取元素内容, 还可以修改元素的值 alist [1,2,3,4,5] alist[1] 10 print(alist)alist [1,2,3,4,5] # print(alist[10]) 如果下标超出列表的有效范围, 会抛出异常# 下标可以取负数,表示【倒数第几个元素】 alist [1,2,3,4,5] print(alist[-1]) # alist[-1] 相当于 alist[len(alist) - 1] 1.4 切片操作 如果说 下标 操作是一次取出里面的一个元素 那 切片 则是一次取出一组连续的元素, 相当于得到一个 子列表 # 使用 [ : ] 进行切片操作 alist [1,2,3,4,5] print(alist[1:3]) # alist[1:3] 中的 1:3 表示的是 [1, 3) 这样的由【下标】构成的【前闭后开】区间# 切片操作可以省略前后边界 alist [1,2,3,4,5] print(alist[1:]) # 省略后边界, 表示获取到列表末尾 print(alist[:-1]) # 省略前边界, 表示从列表开头获取,下标 -1 等同 下标 len(alist)-1 print(alist[:]) # 省略两个边界, 表示获取到整个列表 # 切片操作可以指定 步长 , 也就是 每访问一个元素后, 下标自增几步 alist [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print(alist[::1]) # 自增一步 print(alist[::3]) # 自增三步 print(alist[::5]) # 自增五步# 切片步长还可以是负数, 此时是【从后往前】取元素表示 每访问一个元素之后, 下标自减几步 alist [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print(alist[::1]) # 自减一步 print(alist[::3]) # 自减三步 print(alist[::5]) # 自减五步# 把步长和边界结合 alist [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print(alist[1:6:2]) print(alist[8:2:-2])# 如果切片中的数字越界了, 不会有负面效果. 只会尽可能把满足条件的元素放入子列表 alist [1, 2, 3, 4] print(alist[100:200]) 1.5 遍历列表元素 # 使用 for 循环生成元素 alist [1,2,3,4,5] for elem in alist:print(elem)# 使用 for 循环生成下标 alist [1,2,3,4,5] for i in range(0,len(alist)):print(alist[i])# 使用 while 循环 alist [1,2,3,4,5] while i len(alist):print(alist[i])i 1 1.6 添加元素 # 使用 append 方法, 向列表末尾插入一个元素 alist [1, 2, 3, 4,5] alist.append(world) print(alist)# 使用 insert 方法, 向任意位置插入一个元素 # insert 第一个参数为要插入元素的下标 alist [1, 2, 3, 4,5] alist.insert(1, hello) print(alist)上述的 方法 其实就是函数只不过函数是独立存在的, 而方法往往要依附于某个 对象。 像上述代码 alist.append , append 就是依附于 alist, 相当于是对 alist 这个列表, 进行尾插 1.7 查找元素 # 使用 in 操作符, 判定元素是否在列表中存在. 返回值是布尔类型 alist [1, 2, 3, 4,5] print(2 in alist) print(7 in alist)# 使用 index 方法, 查找元素在列表中的下标. 返回值一个整数 alist [1, 2, 3, 4,5] print(alist.index(2)) # print(alist.index(6)) 如果元素不存在, 则会抛异常 1.8 删除元素 # 使用 pop 方法删除末尾元素(默认尾删) alist [1, 2, 3, 4,5] alist.pop() print(alist) # 使用 pop 按照下标删除元素 alist [1, 2, 3, 4,5] alist.pop(2) print(alist)# 使用 remove 方法, 按照值删除元素 alist [1, 2, 3, 4,5] alist.remove(2) print(alist) 1.9 连接列表 # 使用 能够把两个列表拼接在一起,生成一个新的列表. 不会影响到旧列表 alist [1, 2, 3, 4, 5] blist [6, 7, 8, 9, 10] print(alist blist)# 使用 extend 方法, 把一个列表拼接到另一个列表的后面 # a.extend(b) , 把 b 中的内容拼接到 a 的末尾. 不会修改 b, 但是会修改 a alist [1, 2, 3, 4, 5] blist [6, 7, 8, 9, 10] alist.extend(blist) print(alist) print(blist) 1.10 名字绑定 person1 [10,a,11,b] person2 person1 person2[1] c print(person1) print(person2)# print(person1)结果为 [10, c, 11, b] # print(person2)结果为 [10, c, 11, b] 我们将 person1 的值赋给 person2 ,修改 person2 后person1 的值也被修改了看起来 person1 和 person2 指向同一个列表对象,这是事实 由于列表通常较大考虑到效率Python 将列表从一个变量赋值到另一个变量时并不会复制列表而是将列表关联到另一个变量/名字上  1.11 排序 names [left,right,middle,pet,average] names.sort(keylen) print(names) # [pet, left, right, middle, average]scores [1,2,5,4,6,8,9,10] scores.sort(reverseTrue) print(scores) # [10, 9, 8, 6, 5, 4, 2, 1] 1. sort() 方法将列表的元素按递增排序如果加上参数 reverseTrue按递减排序 2. 字符串比较按字典序 keylen 参数指示应用 len 函数对列表每个元素生成一个 key按 key 的大小比较结果对元素进行排序key 参数也可以指向一个自定义函数 3. sort() 方法会改变原列表如果我们不希望改变原列表可以使用sorted() 函数sorted() 函数也可以使用 reverse 和 key 参数 names [left,right,middle,pet,average] namesSorted sorted(names) print(namesSorted) # [average, left, middle, pet, right] 1.12 元组的操作 元组的功能和列表相比, 基本一致 但元组不能修改里面的元素列表可以修改里面的元素 比如 读操作访问下标, 切片, 遍历, in, index, 等, 元组也是一样支持的 写操作修改元素, 新增元素, 删除元素, extend 等, 元组则不能支持 除此之外元组很多时候是默认的集合类型例如, 当一个函数返回多个值的时候返回元组 def get():return 1,2 ret get() print(type(ret)) 元组的意义 1. 你不想你的数据被弄乱更改 那么这时候使用元组就很安全 2. 对于字典元组可以作为字典的键, 但列表不行 2. 字典 2.1 概念 首先要引入 键值对  的概念把 键(key) 和 值(value) 进行一对一的映射, 然后就可以根据键,快速找到值 字典就是一种存储 键值对 的结构 2.2 创建字典 # 使用 {} 或 dict 创建一个字典 # 创建了一个空字典 a {} b dict() print(type(a)) print(type(b))# 创建字典同时指定初始值 # 键值对之间使用 , 分割, 键和值之间使用 : 分割 # 最后一个键值对后面的 , 可写可不写 # 为了代码规范美观, 往往会把多个键值对, 分成多行来书写 adict { key1: 1,key2: 1 } print(adict) 2.3 查找 key # 使用 in 判定 key 是否在字典中返回布尔值 adict {key1: 1,key2: 111 }print(key1 in adict) print(key3 in adict)# 使用 [] ,获取到元素的值,此处的 下标 是 key adict {key1: 1,key2: 111 }print(adict[key1]) print(adict[key2]) # print(adict[key3]) 如果 key 在字典中不存在, 则会抛异常# 使用 get() 方法以参数中给定键查询字典中值对象 # 第二个参数为默认返回值,不存在第二个参数则返回None adict {key1: 1,key2: 111 } print(adict.get(key1)) print(adict.get(key3)) 2.4 添加/修改元素 # 使用 [] 根据 key 来新增/修改 value # 如果 key 不存在, 即为新增键值对 adict {key1: 1,key2: 111 } adict[key3] 3 print(adict) # 如果 key 已经存在,即为修改键值对的值 adict {key1: 1,key2: 111 } adict[key1] 2 print(adict)2.5 删除元素 # 使用 pop 方法根据 key 删除对应的键值对 adict {key1: 1,key2: 111 } adict.pop(key1) print(adict) 2.6 遍历元素 # 用 for 循环获取字典中的所有的 key adict {key1: 1,ky2: 111,key3: 10 } for key in adict:print(key,adict[key])# 取出所有 key 和 value # 使用 keys 方法获取到字典中的所有的 key adict {key1: 1,ky2: 111,key3: 10 } print(adict.keys()) # 使用 values 方法获取字典中的所有 value adict {key1: 1,ky2: 111,key3: 10 } print(adict.values()) # 使用 items 方法获取到字典中所有的键值对 adict {key1: 1,ky2: 111,key3: 10 } print(adict.items()) 此处 dict_keys 、dict_values、dict_items 是特殊的类型大部分元组支持的操作对于它们同样适用 2.7 合法 key 不是所有类型都可以作为字典的 key 字典本质上是一个 哈希表, 哈希表的 key 要求是 可哈希的, 也就是可以计算出一个哈希值 # 使用 hash 函数计算某个对象的哈希值,能够计算出哈希值的类型, 都可以作为字典的 key print(hash(0)) print(hash(hello)) print(hash(True)) print(hash(())) # ()是一个元组# print(hash[1,2]) 列表无法计算哈希值 # print(hash({key: 1})) 字典无法计算哈希值 3. 字符串进阶 前文已经介绍了字符串的占位符替换和 format() 方法 接下来会有更多常见的字符串处理方法 # find() 方法 # find() 方法用于在字符串中查找指定子串位置,返回子字符串开始下标 # 语法格式 find(sub,beg,end) # sub 表示指定检索的字符串 # beg 表示开始索引的下标,默认为0 # end 表示结束索引的下标,默认为字符串的长度 # beg,end 可以省略s hello world hello Python print(s.find(Python,0,len(s)))# s.find(Python,0,len(s)) 表示从下标 0 开始 到 len(s)不含len(s)) 结束查找Python# join() 方法 # join() 方法将序列里多个字符串用指定间隔字符串拼接 # 语法格式 s.join(seq) # s 为指定的间隔字符串 # seq 表示要连接的元素序列,可以是元组或列表但其中元素必须是字符串 numbers [1,2,3] print(.join(numbers))# replace 方法 # replace() 方法将字符串内指定子串全部替换为另一个子串 # 语法格式 replace(old,new,count-1) # old 表示被替换的子字符串 # new 表示用于替换的新字符串 # count 表示替换的次数默认-1表示不作限制全部替换 s hello world hello Python sNew s.replace(hello,wowo) print(s) print(sNew)# split() 方法 # split() 方法用于把一个字符串用指定的间隔符拆开成多个字符串并放入列表返回 # 语法格式 split(sepNone,maxsplit-1) # sep 默认为 None,表示使用空白字符作为分隔符 # maxsplit为最大拆分次数默认为-1,表示不限制 print(12345.split())
http://www.dnsts.com.cn/news/249787.html

相关文章:

  • 做更好的自己 网站校园网站的系统建设
  • 一个网站域名ipwordpress头像修改
  • 晚上必看的正能量网站永康建设网站
  • 云南seo简单整站优化站酷的网址
  • 网站建设常态化工作机制wordpress single页面
  • 企业营销网站建设费用预算网站建设关键词优化
  • 中国建设网网站一个几个人做网站的几个故事电影
  • 大型门户网站开发教程做seo网站图片怎么优化
  • 橡胶塑料制品公司网站建设企业建网站好
  • 建设医疗网站网站建设推广服务合同
  • 有没有做淘宝的网站吗企业所得税计算方法举例
  • 网站互动长沙小学网站建设
  • asp网站建设教案wordpress文章列表paixu
  • 重庆施工员证查询网站怎么做同城网站
  • 如何创建自己的网站链接小说写作网站
  • 能制作视频的软件企业网站产品内页优化
  • 网站开发框架 知乎做微信推送封面的网站
  • 用股票代码做网站的网站建设齐齐哈尔
  • 网站怎么做qq微信登陆界面什么是网络营销?什么是创新创业?两者有什么关系?
  • 郑州网站建设行情网站关键词用什么做
  • 网站 虚拟空间wordpress云建站教程
  • 网站域名重定向怎么做国家备案网查询系统
  • 亚马逊网站入口上海招聘网站排名
  • 找企业网站制作天津网站建设举措
  • wordpress导入演示卡主seo是什么技术
  • 微软云怎么做网站网站开发工作总结
  • 怎么在网站添加链接网站建设好找工作吗
  • 自适应网站h5网站开发定制
  • 通过付费网站做lead邯郸市网站建设多少钱
  • 腾讯云建设网站做ip资讯的网站