Python (三)Data type

一: 数据类型

1: 列表

  • 列表的格式

    • 列表可以存储多个数据, 数据可以为不同的数据类型。
    • 列表可以一次性存储区多个数据, 可以对它进行增删改查。
    • name_list = ['wang', 'yong', 'fei', 'lin']
  • 列表的应用场景

  • 列表的常用操作

    • 查找
      • index : name_list[index]
      • index() 函数, 返回指定的下标位置,
        • name_list.index('wang', 0, 3) : 有:返回1, 没有: 报错。
        • 函数格式: index(数据, 起始位置, 终止位置)
    • count(): 返回指定的数据, 个数
    • len(); 返回列表的长度。
    • 判断数据是否存在:
      • 语法格式: 数据 + in + 列表
      • 'wang' in name_list 返回值 : 为 True 或者 False
      • not in : 判断某个数据不在指定的列表中。:不存在:True, 存在: False
    • 增:append(): 列表的末尾增加数据
      • append(): 可以追加的数据是一个序列
      • name_list.append(['wang', 'yong'])
    • extend() , 也是追回数据, 追加的是一个序列
      • name_list.extend('wangyong')
      • 上面会将数据中的序列, 逐个的添加到数据的结尾。
    • insert(): 指定位置插入数据。
    • del + 目标: 删除数据。
      • del name_list 删除整个是列表
      • del name_list[0] 删除单个的数据
    • pop(); 默认是删除最后一个数据
      • 可以进行指定下标进行数据删除。
      • name_list.pop(1)
    • remove(数据值): 移除列表中某个指定数据的项
    • clear(): 清空列表
    • 修改
      • name_list[0] = 'wangyong' : 修改指定的下标数据。
    • reverse( )
      • name_list.reverse(); 将数据中的所有元素进行逆置
    • sort( )
      • 列列表序列列.sort( key=None, reverse=False)
      • reverse表示排序规则,reverse = True 降序, reverse = False 升序(默认)
    • copy( ) : 复制
      • name_list2 = name_list.copy( )
  • 列表的循环遍历

    • while
    i = 0
    name_list = ['wang', 'yong', 'zhong','hua']
    while i < name_list.len()
    	print(name_list[i])
       i++
    
    • for in
  • i = 0
    name_list = ['wang', 'yong', 'zhong','hua']
    for i in name_list.len()
    	print(name_list[i])
    
  • 列表的嵌套使用

    • name_list = [['⼩小明', '⼩小红', '⼩小绿'], ['Tom', 'Lily', 'Rose'], ['张三', '李李四', '王五']]
    • 查询 : ‘李四’ :name_list[2][1]

2:元组

(1): 元组的应用场景

(2): 定义元组

  • 元组的特点:
    • 元组的定义:用小括号和逗号进行分割,
    • 元组数据一旦定义进步可以进行修改, 但是元组数据中有列表时, 可以进行数据的修改。
    • 当元组数据中只有一个元素时,末尾要用‘逗号’: 否则数据类型和定义普通数据类型没有区别。

(3): 元组常见的操作

  • 按照下标查找数据
  • index(数据值) ,
    • 如果查找的数据存在,则返回相应的下标值
    • 如果数据值不存在,则返回错误。
  • count(数据值)
    • 统计当前数据值在元组中出现的次数。
  • len()
    • 统计当前元组中数据的个数。

3: 字符串(属于不可变类型)

(1): 字符串可以为一对引号

  • str1 = 'hello world'
  • str2 = "hello world"

(2): 字符串可以为三对引号

  • str3 = '''hello world'''
  • st4 = """ hello world """
  • str5 = “”" hello

​ world “”’’

  • 三对引号可以进行字符串换行操作。

(3): 使用 input( ): 进行字符串的输入。

(4): [ ] : 字符串可以使用下标进行字符串的中元素的提取。

4:切片

(1): 切片是指对操作对象截取其中的一部分的操作。 字符串, 列表, 元组都支持切片操作。

(2): 语法:

  • 序列[开始位置下标: 结束位置下标: 步长]
  • 注意事项:
    • 不包含位置下标对应的数据, 正负整数均可。
    • 步长是选取间隔, 正负整数均可, 默认步长为1。
name = 'helloworld'

print(name[2:5:1])  #llo
print(name[2:5])    #llo
print(name[:5])     #hello
print(name[1:])     #elloworld
print(name[:])      #helloworld
print(name[::2])    #hlool
print(name[:-1])	  #helloworl   :  -1 表示: 倒数第一个数据
print(name[-4:-1])  #orl
print(name[::-1])   #dlrowolleh

(4): 字符串常用的方法操作

  • find( ):

    • 检查数据是否在这个字符串中
    • 可以设置一定的范围进行数据的查询
  • index( )

    • 检查某个子串是否在这个字符串中
  • rfind(): 和find()功能相同,但查找⽅方向为右侧开始。

  • rindex():和index()功能相同,但查找⽅方向为右侧开始。

  • count():返回某个⼦子串串在字符串串中出现的次数

  • replace ( )

    • 修改字符串函数,
    • 字符串序列.replace (旧字符串, 新字符串, 替换次数)
    • 数据可以分为:可变参数和不可变参数
  • split( )

    • 语法: 字符串序列.split(分割字符, num)
    • 分割时, 选用的是字符串中的字符, 分割之后会丢失。
  • join():

    • ⽤用⼀一个字符或⼦子串串合并字符串串,即是将多个字符串串合并为⼀一个新的字符串串。
    • 字符或⼦子串串.join(多字符串串组成的序列列)
list1 = ['chuan', 'zhi', 'bo', 'ke']
t1 = ('aa', 'b', 'cc', 'ddd')
# 结果:chuan_zhi_bo_ke
print('_'.join(list1))
# 结果:aa...b...cc...ddd
print('...'.join(t1))
  • capitalize():
    • 将字符串串第⼀一个字符转换成⼤大写
    • 只转换第一个字符, 其余的全部小写。
  • title():
    • 将字符串串每个单词⾸首字⺟母转换成⼤大写。
  • lower():
    • ·将字符串串中⼤大写转⼩小写
  • upper():
    • 将字符串串中⼩小写转⼤大写
  • lstrip():
    • 删除字符串串左侧空⽩白字符
  • rstrip():
    • 删除字符串串右侧空⽩白字符
  • strip():
    • 删除字符串串两侧空⽩白字符
  • ljust():
    • 返回⼀一个原字符串串左对⻬齐,并使⽤用指定字符(默认空格)填充⾄至对应⻓长度 的新字符串串
    • 字符串串序列列.ljust(⻓长度, 填充字符)
  • rjust():返回⼀一个原字符串串右对⻬齐,并使⽤用指定字符(默认空格)填充⾄至对应⻓长度 的新字符串串,语法和ljust()相同。
  • center():返回⼀一个原字符串串居中对⻬齐,并使⽤用指定字符(默认空格)填充⾄至对应⻓长度 的新字符串串,语
    法和ljust()相同

(5): 判断

  • startswith():
    • 检查字符串串是否是以指定⼦子串串开头,是则返回 True,否则返回 False。如果设置开
      始和结束位置下标,则在指定范围内检查。
    • 语法: 字符串串序列列.startswith(⼦子串串, 开始位置下标, 结束位置下标)
  • endswith()::
    • 检查字符串串是否是以指定⼦子串串结尾,是则返回 True,否则返回 False。如果设置开
      始和结束位置下标,则在指定范围内检查
    • 语法: 字符串串序列列.endswith(⼦子串串, 开始位置下标, 结束位置下标)
  • isalpha():
    • 如果字符串串⾄至少有⼀一个字符并且所有字符都是字⺟母则返回 True, 否则返回 False
  • isdigit():
    • 如果字符串串只包含数字则返回 True 否则返回 False
  • isalnum():
    • 如果字符串串⾄至少有⼀一个字符并且所有字符都是字⺟母或数字则返 回 True,否则返回
      False。
  • isspace():
    • 如果字符串串中只包含空⽩白,则返回 True,否则返回 False

5: 数据类型的常用操作

(1) 运算符

运算符描述支持的容器类型
+合并字符串,列表,元组
*复制字符串,列表, 元组
in元素是否存在字符串 , 列表, 元组, 字典
not in元素不存在字符串, 元组, 列表, 字典

(2):公共的方法

函数描述
len( )计算容器中元素的个数
del 或 del ( )删除
max( )返回容器中元素的最大值
min( )返回容器中元素的最小值
range(start, end, step)生成从 start 到 end 的数字, 步长为 step, 供 for 循环使用
enumerate( )函数用于将一个可遍历的数据对象(如列表,元组, 字符串)组合为一个索引序列,同时列出数据和数据下标, 一般用在 for 循环中。
# 1 2 3 4 5 6 7 8 9
for i in range(1, 10, 1):
print(i)
# 1 3 5 7 9
for i in range(1, 10, 2):
print(i)
# 0 1 2 3 4 5 6 7 8 9
for i in range(10):
print(i)

(3): 数据类型的划分

列表集合元组字符串
list1 = [1, 3, 5, 6]set1 = {10, 320,40}tuple = (10, 20,30)
集合可以完成去重的任务,但不支持下标操作
可变数据类型可变数据类型不可变数据类型, 元组中有类表时,可变不可变数据类型
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值