python基础知识之列表、元祖、字典、集合、字符串。

1.可变类型之列表

列表用 [ ]来定义是可变的,可以通过索引值来去查询里面的字段可以可以追加,删除等

```python
names=‘zhangyang guyun xiangpeng xuliangwei‘
names = [‘zhang‘, ‘zhuang‘, ‘chen‘, ‘qiang‘]
name_list = [[‘zhang‘, ‘zhuang‘], [‘chen‘, ‘qiang‘]]
list_num = [1, 4, 5, 2, 3, 4, 52, 54]
print(len(names)) # 获取列表长度

print("aaffaa".count("a")) # 获取a在字符串出现的次数

print(names[1:3]) # 切片

print(names[-1]) # 获取最后一个元素
print(names[-2:]) #
names.append(‘qianqq‘) # 追加

names.insert(1, ‘chengrouhua‘) # 插入
names.insert(3, "xinzhiyu")
names[2] = "ixnixn" # 修改
names.remove("qiang")
del names[0]
names.pop(0) # 删除元素 并返回删除的元素的值 可以加索引 删除指点的值 不加则删除最后一个
del names[2:4] # 切片删除

names.sort() # 排序->对原有列表排序 么有返回值 (元素是数字,字符等 ,里面的元素必须一致)
print(sorted(list_num, reverse=True)) # 这个有返回值 不改变原有列表的值 key对应排序规则
print(list_num)

for i in names:
print(i) # 循环遍历列表

for i in range(1, 10, 2):
print(i)

print(names[::2]) # 隔行筛选

print(‘zhuang‘ in names) # 判断字段是否在列表里

name1 = ["wutenglan","sanglaoshi"]
name2 = ["bojie","xize"]

name = name1.extend(name2) # 将name2 并到name1中

names2 = names.copy() # 浅浅的copy

print(dir(names)) # 获取列表所支持的方法

```
2.不可变类型元素

元祖,是一种不可 变得列表形式,一旦定义则不可以改变,一般用于数据库的连接,绑定 IP跟端口使用。

元祖特性:
1.不可变,定义元祖 的时候如果只有一个元素这样必须在元祖后面加逗号加以区分。注:元祖内部如果有列表等可变元素则可以修改

2.只有查询功能。通过索引值查询内部数据

3.可变类型字典

字典有如下特点:

1.key-value格式,key是唯一的
2.无序的
3.查询速度快

```python

info={
‘stu1101‘:"wu teng lang",
‘stu1102‘:"cang",
‘stu1103‘:"xiaoze",
‘stu1104‘:"bo jie"
}
b={1:2,3:4}

print(info[‘stu1101‘]) #查看字典stu1101 的键对应的value

info[‘stu1101‘]=‘mmmmm‘ #如果字典有这个key值则修改,没有则添加
info[‘stu1105‘]=‘sssss‘

info.setdefault(‘stu1101‘,‘alxe‘) #如果key的值 在字典里则修改,没有则添加

info.update(b)# 在info字典后面追加B字典的字段,如果重复的更新跟字段。

info.pop(‘stu1105‘) #通过key的值来删除字典的对应的值 pop方法有返回值,返回删除元素的value值 不存在key的值会报错 dic.pop(key[,default]) 可以指定值 不存在用defalut的值

print(info.get(‘stu1106‘)) # 这是一种通过key来获取值得方式这样不会报错,没有则返回

print(‘stu1104‘ in info) #判断key的值在不在字典中 通过key的值来判断 。

print(info.keys()) #返回所有的key #打印所有字典key的 值
print(info.values()) #返回字典所有的value值
print(info.items()) # 返回元祖 把key跟value 组成元祖
info_list = list(info.items()) # 将 字典的key value的值改为 列表 存储

for k in info:# k是info 的key 遍历字典key的值打印
print(k,info[k])
```
4.可变类型集合

集合:一个或者 多个元素构成的整体叫做集合
集合的特性

1.天然去重 

2.集合内部元素是无序的

3.通过运算可以取出两个集合的符合条件的元素类型组成一个新的集合

常见的集合运算如下:

b={1,2,3,4,5,5,5,6}  #互异性天然去重的原则
c={2,3,4,8,9,10,56,45}
s_set = set("hello")  # {'l', 'h', 'e', 'o'} 无须 且 去重

#集合的常用操作

s_set = {'a','b','c'}

s_set.add("d") # 集合的添加 

# 对序列的增加:
update(),而update类似extend方法,update方法可以支持同时传入多个参数
a={1,2}
a.update([3,4],[1,2,7])
 a={1, 2, 3, 4, 7}
a.update("hello")
a={1, 2, 3, 4, 7, 'h', 'e', 'l', 'o'}

#对集合元素的单个删除
#集合删除有两个办法:
#元素不在原集合中时:

# set.discard(x)不会抛出异常
# set.remove(x)会抛出KeyError错误
a={1,2,3,4}
a.discard(1)
a={2, 3, 4}
a.discard(1) a={2, 3, 4}
a.remove(1)
Traceback (most recent call last):
  File "<input>", line 1, in <module>
KeyError: 1

b.add(90)  #增加元素
b.remove(90) #删除元素 如果没有元素则报错
b.discard(4) #删除元素  没有则不报错
print(b)
b.pop()  #删除元素(任意)
print(b)

# 清空 set
pop():由于集合是无序的,pop返回的结果不能确定。且当集合为空时调用pop会抛出KeyError错误。
clear():清空集合
# 集合 操作
print(b-c)  #意思就是拿b中的每一个元素去减c中的元素,得到不同的一个集合。
print(b|c)  #并集两个集合的合并
print(b^c)  #两个集合中不是共同部分的元素取出来
d=set(info)  #设置集合  字典是key的值

5.字符串的操作


name='aaalcx lill'
print(name.index("l"))
print(name.count("l"))#  统计字符串某个字符串的数量
print(name.capitalize())#首字母大写
print(name.center(50,'*'))#把name放在中间 50 个字符
print(name.replace('l','L',4))#代替  三个参数
print("123".isdigit())#判断是否是整数
print("aaaooolll".endswith('ll'))
msg = "my name is {}, and age is {}"
print(msg.partition('is'))#is 中间分成元祖
print(msg.format("zj","25"))

name.join("cx")
print(name.join("cxb"))#  对数字进行操作

name='abcd lill'
name1="abc \tlill"
name.strip()#变成字符串
name.title()#变成标题
print(name.rsplit())
print(name.capitalize())#首字母大写
print(name.count("a"))#  统计字符
print(name.center(50,"*"))#一共 打印50字符 不够用*补上,把name放中间
print(name.endswith("ll"))# 判断字符串结尾
print(name1.expandtabs(30))

print(name.find("li"))#  查找 索引!字符串可以切片
name3="my  name  is {name} and age is {age}"
print(name3.format(name="alix",age="22"))
print(name3.format_map({"name":"alex","age":"29"}))
print(name3.index("y"))
print(name.isalnum())#  是不是阿拉伯数字
print(name.isalpha())#判断纯粹的英文字符
print(name.isdecimal())#判断十进制
print(name.isdigit())# 判断是否整数
print(name.isidentifier())#判断是不是合法的标识符(变量名)
print(name.islower())# 判断是小写!
print(name.isnumeric())#判断是否是数字!!仅仅是数字 返回True
print(name.isspace())
print(name.istitle())
print(name.isprintable())#  是否可打印!在tty文件设备终端文件
print(name.isupper())# 全是大写
print("*****")
print("|".join(["1","2","3","4"])) # 列表 里面的字符串  变成 字符串
print("*****")
print(name.ljust(50,"-"))#  后面 补足*
print(name.rjust(50,'-'))
print(name.lower())# 大写变成小写
print(name.upper())

print("\nAlex\n".lstrip())#左边去空格或者回车
print("\nAlex\n".rstrip())#右边边去空格或者回车
print(name.strip())#两边都去空格

print("funny keys\n")
v=str.maketrans("abcdef","123456") # 数字对应!
print("Alex li".translate(v))

print("alex l".replace('l','L',1))
print("alex li".rfind("l"))#找到最右边的的l 并返回

print(name.split())  # 安照 空格 分成列表
print(name.split('a'))  # 安照 a 分成列表
print(name.splitlines()) # 按照换行  分 linux  window
print(name.startswith('a'))
print(name.swapcase()) #大小写转换
print(name.title())#  变标题
print("alex  li ".zfill(50))#  50 个不够在前面补0

print("  name aaa   ".split())
name='aa aaaa'
print(name.isalpha())  # 判断是不是字母!
print(len('你好'.encode()))

import string
# maketrans 函数 对应的是设定一个格式 对应maketrans(input,output)生成的 是一个模板
table = str.maketrans(string.ascii_lowercase, string.ascii_lowercase[2:] + string.ascii_lowercase[0:2])
#对应的方法为 translate
print(str.translate('aaa', table))

原文地址:https://www.cnblogs.com/zjcode/p/9040057.html

时间: 2024-10-13 14:09:57

python基础知识之列表、元祖、字典、集合、字符串。的相关文章

python 高级数据类型(列表 元祖 字典 字符串)

高级变量类型 目标 列表 元组 字典 字符串 公共方法 变量高级 知识点回顾 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) 真 True 非 0 数 -- 非零即真 假 False 0 复数型 (complex) 主要用于科学计算,例如:平面场问题.波动问题.电感电容等问题 非数字型 字符串 列表 元组 字典 在 Python 中,所有 非数字型变量 都支持以下特点: 都是一个 序列 sequence,也可以理解为 容

字符串 数字 列表 元祖 字典 的不同分类and集合的概念

可变不可变 1.可变:列表 字典 2.不可变:字符串 数字 元祖 访问顺序: 1.顺序访问:字符串 列表 元祖 2.映射:字典 3.直接访问:数字 存放元素个数: 容器类型:列表 元祖 字典 原子:数字 字符串 id(变量名)可以查出储存的位置 s={1,2,3,3,9,8,8} print(id(s)) 41383080 集合(set): 1.不同元素组成 2.无序 3.集合中元素必须是不可变类型 例如: s={1,2,3,3,9,8,8} print(type(s)) 输出 <class '

python基础知识之列表、元祖、字典/字符串。

基础知识之列表: 列表用 [  ]来定义是可变的,可以通过索引值来去查询里面的字段可以可以追加,删除. 常用用法如下 names = ['zhang', 'zhuang', ['alx', 'bob'], 'chen', 'qiang'] print(len(names)) # 获取列表长度 print("aaffaa".count("a")) # 获取a在字符串出现的次数 print(names[1:3]) # 切片 print(names[-1]) # 获取最后

python学习day-3 列表 元祖 字典

一.列表list a.基础 1. li = [1, 12, 9, "age", ["石振文", ["19", 10], "庞麦郎"], "alex", True] 中括号括起来:,分割每个元素:列表中的元素可以是数字,字符串,列表,布尔值......:列表可以嵌套 (他就是个集合,内部放置任何东西) 2.可以进行索引,切片取值 li = [1, 12, 9, "age", ["

python基础(序列,元祖,列表,字典,对象,类)

1.标准的序列操作: 索引.分片.乘法.判断成员资格.求长度.取最大值和最小值 2.python之删除命令的区别: >>> x ['or', 'not', 'to', 'be', 'or', 'be'] del:删除指定索引的值 >>> del x[0] >>> x ['not', 'to', 'be', 'or', 'be'] pop:默认删除最后一个值 >>> x.pop() 'be' >>> x ['not',

python,列表/元祖/字典

1.格式 li=[1,2,3,'a','b','c']#list列表 tu=(1,2,3,'a','b','c',)#tuple元祖 info={ 'k1':'v1', 'k2':'v2' }#字典,键值对key/value,其中vaule可以是任意值#列表.字典.bool不能做key,元祖.数字可以 2.键值对函数 info.items( ) 3.字典常用函数 1 dic1=info.fromkeys(['k1','k2'],99) 2 #根据序列创建字典,指定统一value 3 print(

python基础知识温习-列表

列表:列表是数据的集合,集合内可以放置任意数据类型,可对集合进行方便的增删改查. 列表的定义: # 方法1: l3 = list() print(l3) # 结果为[]空列表 #方法2: l4 = [] print(l4) #结果为空列表 查询列表元素: l2=['a','b','c','d'] #存四个值,索引为0-3 # l2[1]取出列表中第二个元素 print(l2[1]) l2[-1] #最后一个元素 print(l2[-1]) #同理print(l2[-2])为倒数第二个元素 确定列

python----基础之数据类型(元祖,字典,集合)

元祖 元祖的定义和特性 定义:列表已经介绍过,现在介绍一种与类表相似的类型,叫做元祖,只不过把[]改成(). 特性: 1.可以存放多个指 2.不可变 3.按照从左往右的顺序定义元祖的元素,下标从0开始依次顺序访问,有序 元祖的创建与常用类型 1 # 创建 2 >>> we = (11, 22, 33, 44, 55) 3 >>> we 4 (11, 22, 33, 44, 55) 5 >>> type(we) 6 <class 'tuple'&g

【Python基础知识】基本数据类型:数字、字符串、列表、元组、字典、集合

1.查看Python版本 python -V 2.Windows系统下使用命令行设置环境变量:path=%path%;D:\Python 3.几个重要的Python环境变量 PYTHONPATH PYTHONPATH是Python搜索路径,默认我们import的模块都会从PYTHONPATH里面查找. PYTHONSTARTUP Python启动后,先寻找PYTHONSTARTUP环境变量,然后执行此变量指定的文件中的代码. PYTHONCASEOK 加入PYTHONCASEOK的环境变量,就会