python开发基础——day7 序列类型方法

一、初识序列类型方法

序列类型的概念:数据的集合,在序列类型里面可以存放任意的数据,也可以对数据进行更方便的操作,这个操作是叫增删改查(crud) ( 增加(Creat),读取查询(Retrieve),更新(Update),删除(Delete) 几个单词的首字母简写)

增删改查是操作数据最底层的操作:从本质出发,我们对数据所有的行为归根到底就是增删改查四个字
    增加新的数据
    修改原有数据
    查看指定数据
    删除指定数据
    
因为我们在操作序列类型的数据的时候,会经常用到增删改查的操作,所以python给我们提供了一些的内置的功能函数,作用就是帮助我们更好的对数据增删改查

方法都是固定的语法,不需要要去死记硬背
pycharm有补全代码的功能,如果忘了,翻笔记/百度

二、列表方法-list

food = ['麻辣烫','螺蛳粉','火锅','泡菜']

1、增

1.append:追加一个数据,添加一个数据到列表的最后一位
    列表.append(内容)
    food.append('奶茶')
    food.append(['蜜雪冰城',5]) #整个序列类型追加进去
    print(food)
    
2.insert:在指定的位置上添加一个数据,原数据会被挤到后面(插队)
    列表.insert(下标,内容)
    food.insert(0,'咖啡')
    food.insert(3,'幽兰拿铁')
    print(food)
    
3.extend:追加一个序列类型的数据到最后一位 
    列表.extend(序列内容)
    [1]追加单个字符串,是把字符串拆分追加(不能追加单个数字)
    food.extend('冰激凌')
    print(food)
    [2]追加一个序列类型,把值分别追加进去
    food.extend(['绿豆雪糕',13]) #把序列类型的值分别追加进去
    print(food)

2、删

1.pop:在有指定下标后删除一个值 没有指定的下标时 会默认删除最后一个数据
    列表.pop()   #  默认删最后一位
    food.pop()
    print(food)
    
    列表.pop(下标) # 删除指定下标的数据 
    food.pop(0)
    print(food)
    
2.remove:删除一个指定的数据 如果有重复的数据 从第一个开始删
    列表.remove(数据)
    food.remove('螺蛳粉')
    print(food)
    
3.clear:清空列表里的所有数据
    列表.clear()
    food.clear()
    print(food)

4.del  删除数据,也可以直接删除这个变量
    1.删除整个变量  
        del 变量名
        del food
    2.删除变量里的值
        del 列表[下标]
        del food[1] #删除food里下标为1的数据
        print(food)

3、改

1.修改单个值:通过索引直接修改
    列表[下标] = 值
    food[0]='水果'
    print(food)

2.修改多个值:通过切片来修改
    列表[起点:终点] = 数据1,数据2,数据3
    food[1:4]='草莓','葡萄','芒果','榴莲'
    print(food)

4、查

所有的查询方法,里面的内容是显示出来看的,而不是修改的,所以都要用print包裹方法输出

number=[1,2,5,3,4,68,4,2,6,2,1,1]
1.index:根据内容,获取指定数据的下标
    列表.index(数据)  # 默认从下标为0的位置开始搜索
    print(number.index(68))

    列表.index(数据,起点下标) # 从起点下标开始找数据
    print(number.index(1,3)) #从设置的起点下标3这个位置找第一个数据1

2.count:求和,统计数据出现的次数
    列表.count(数据)
    print(number.count(1))

5、其他

num = [6.66,520,70,123,888,False,9]

sort:对列表的内容进行排序,如果列表里面有字符串是不可以排序
    列表.sort()  # 默认是升序排序,从小到大
    num.sort()
    print(num)

    列表.sort(reverse = True)  # 降序排序.从大到小
    num.sort(reverse=True)
    print(num)

三、元组方法-tuple

元组不可以修改,所以没有增删改的操作

1、查

demo=(30,34,24,520,True,520,'好好学习')

1.index:根据内容,获取指定数据的下标
    元组.index(数据)  # 默认从下标为0的位置开始搜索
    print(demo.index(520))
    
    元组.index(数据,起点下标) # 从起点下标开始找数据
    print(demo.index(520,5))

2.count:求和,统计数据出现的次数
    元组.count(数据)
    print(demo.count(520))    

四、字符串方法-str

字符串和元组一样,是不可变的类型,里面数据是不可以改变的,除非重新赋值,否则里面的数据是改变不了的(所有的字符串的方法操作都是要用print包裹方法输出)

字符串本体是不变的 但是可以通过方法给你看修改结果

1、增

字符串严格来说没有专门得到增加方法 直接用+拼接即可
字符串+字符串
talk = '我爱学python,每天都要学习'
print(talk + '所以你今天学了吗')
    
join:指定字符串连接序列中元素后生成一个新的字符串
    print('*'.join('我喜欢你'))
    s='--'
    name='伊尔'
    print(s.join(name))
    li=['aa','bb','cc']
    print('..'.join(li))

2、删

talk1='你这傻逼玩的这么傻逼的操作还来玩游戏'
replace:可以删除/可以替换
    字符串.replace('要删除的值','')
    print(talk1.replace('傻逼',''))
    
    字符串.replace('要修改的值','新的值')
    print(talk1.replace('傻逼','**'))
    
    字符串.replace(要修改的值,新的值,修改的次数)
    print(talk1.replace('傻逼','小可爱',1))

3、改

name='Hello World  hello world 伊尔'

upper:字符串里的字母全部大写
    字符串.upper()
    print(name.upper())
    
lower:字符串里的字母,全部小写
    字符串.lower()
    print(name.lower())
    
title:字符串里的单词首字母改为大写,以空格符号为标准
    字符串.title()
    print(name.title())

strip:去除字符串左右两边的空格
    字符串.strip()
    print(name.strip())

split:切分.根据指定的内容,切分字符串
    字符串.split('分割对象')
       print(name.split('o'))

4、查

find:通过内容获取数据的下标
    字符串名.find(内容)
    print(name.find('o'))
    字符串名.find(内容,下标)
    print(name.find('l',7))
    
count:求和,统计数据出现的次数
    字符串.count('数据')
    print(name.count('o'))
    
isdigit:判断字符串里是否为纯数字,结果为布尔值
    字符串.isdigit()
    a='520'
    aa='520美女'
    print(a.isdigit())
    print(aa.isdigit())
    
isalpha:判断字符串是否为纯中文/字母
    字符串.isalpha()
    b='yn伊尔'
    bb='yn伊尔12'
    bbb='yn伊尔#$%'
    print(b.isalpha())
    print(bb.isalpha())
    print(bbb.isalpha())

endswith:判断字符串的后缀,是否为指定字符,结果为布尔
    字符串.endswith('数据')
    c='大家很帅'
    print(c.endswith('很帅'))
    print(c.endswith('很棒'))

五、练习

1.序列类型方法的本质,是帮助我们更好的实现____操作

2.现有列表如下
li = [555,233,"祝大家假期快乐",True] 
把它修改为['伊尔',"祝大家学习加油",True,666] 

3.现有元组如下,在该元组中,70这个值,出现过几次?  
tu1 = (233,70,70,70,'70',False,"好好学习",70,"天天向上",70)

4.现有几串字符串如下,通过字符串方法完成对应操作
    "7070770"    1.判断是否是纯数字  2.获取里面一共有几个'7'
    "APPle"  1.请把它改为全大写输出   2.请把它改为全小写输出

5.有一字符串 talk1 = "大家很帅",把它改为"大家很棒"输出

6.有一字符串talk2 = "祝大家生日快乐"  把"生日" 改为"新年"输出

    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/32188.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蔚来汽车AI算法工程师,如何理解注意力?

大家好啊,我是董董灿。 今天分享一个上海蔚来汽车的AI算法岗位面试经验总结帖,面试岗位为算法工程师。 这次面试提到的问题,除了与实习相关内容和反问之外,面试官总共问了8个问题,主要集中在深度学习基础概念的理解上…

LeetCode.239滑动窗口最大值问题详解

问题描述 给定一个整数数组 nums 和一个整数 k,k 代表滑动窗口的大小,该窗口从数组的最左侧滑动到最右侧。你只能在滑动窗口内看到 k 个数字,每次窗口向右移动一位。要求返回每个滑动窗口中的最大值。 示例 考虑数组 nums [1,3,-1,-3,5,3…

共93本!全网最全Frontiers旗下期刊2022、2023版影响因子和分区对比完整版目录!

本周投稿推荐 SSCI • 1区,4.0-5.0(无需返修,提交可录) EI • 各领域沾边均可(2天录用) CNKI • 7天录用-检索(急录友好) SCI&EI • 4区生物医学类,0.1-0.5&…

Gotchiverse Alchemica 代币现已在Base上线

​ 朋友们大家好, 继 GHST 成功登陆 Base 之后,我们很高兴地宣布,Gotchiverse的 "Gotchus Alchemica " token 也将登陆 Base! 从今天起,你就可以通过我们由 Socket 协议提供的新链抽象技术,将 Al…

# 消息中间件 RocketMQ 高级功能和源码分析(十一)

消息中间件 RocketMQ 高级功能和源码分析(十一) 一、消息中间件 RocketMQ 源码分析: 拉取消息长轮询机制 1、消息拉取长轮询机制分析 RocketMQ 未真正实现消息推模式,而是消费者主动向消息服务器拉取消息,RocketMQ …

毕业季带给我的五个启示

每到毕业季,校园里总是充满了复杂的情绪。有人欢笑,有人落泪。同样的四年大学生活,为何结局如此不同?本文将从多个角度探讨如何实现综合改变,解释在交友、机会和心态上的关键因素,揭示“慢就是快”的真理。…

go语言day2

使用cmd 中的 go install ; go build 命令出现 go cannot find main module 错误怎么解决? go学习-问题记录(开发环境)go: cannot find main module; see ‘go help modules‘_go: no flags specified (see go help mod edit)-CSDN博客 在本…

MinIO 网络与覆盖网络

云计算和容器化技术的发展改变了应用程序的开发、部署和管理方式。这种转变给网络环境带来了重大变化,为DevOps和SRE工程师带来了新的挑战和机遇。然而,在这种转变中,出现了明显的知识差距,特别是在理解物理网络和硬件背景下网络的…

【自动驾驶】ROS小车系统

文章目录 小车组成轮式运动底盘的组成轮式运动底盘的分类轮式机器人的控制方式感知传感器ROS决策主控ROS介绍ROS的坐标系ROS的单位机器人电气连接变压模块运动底盘的电气连接ROS主控与传感器的电气连接ROS主控和STM32控制器两种控制器的功能运动底盘基本组成电池电机控制器与驱…

Vulnhub--OS-HACKNOS-2.1

渗透复现 目标站点为wordpress,通过wpscan进行漏洞扫描发现漏洞插件 通过漏洞插件存在的目录穿越漏洞成功读取/etc/passwd文件中flag用户的密码 SSH登录flag用户后在备份文件中找到rohit用户的密码 切换rohit用户,rohit用户能够以root权限执行任何文…

mysql自动填写当前时间,添加索引

mysql自动填写当前时间 在navicat操作界面创建表时,如果需要自动填写时间,可以操作如下 CURRENT_TIMESTAMP为表添加索引 ALTER table tableName ADD INDEX indexName(columnName)追加外键 ALTER TABLE tb_commentPhoto ADD CONSTRAINT FK_comment_ph…

Redis源码学习:高性能Hash表的设计与实现

哈希表(Hash)是Redis数据库的数据类型之一,理解哈希表的实现对于掌握Redis非常重要。这篇文章,从哈希冲突和哈希扩展这两个角度,来一步步讲解Redis哈希表的工作原理。 什么是哈希表? 哈希表是一种通过哈希…

DM8的列存储HUGE表

DM8的列存储HUGE表 在达梦数据库(DM8)中,列存储(Columnar Storage)是一种用于优化大数据分析性能的存储模式,通过将数据按列存储而不是按行存储,能够显著提高查询性能,特别是涉及大…

Linux-目录和文件

目录 一、Linux目录 1、Linux常见目录 2、常见的Linux文件类型 二、cat-查看文件命令 1、cat命令用法 三、分页查看文件内容 1、 more命令 ​2、less命令 ​3、more和less的区别 四、查看文件开头或末尾 1、head命令 2、tail命令 3、wc-统计文件内容 4、grep 命令…

多功能投票系统(ThinkPHP+FastAdmin+Uniapp)

让决策更高效,更民主🌟 ​基于ThinkPHPFastAdminUniapp开发的多功能系统,支持图文投票、自定义选手报名内容、自定义主题色、礼物功能(高级授权)、弹幕功能(高级授权)、会员发布、支持数据库私有化部署,Uniapp提供全部无加密源码…

工业web4.0UI风格令人惊艳

工业web4.0UI风格令人惊艳

ARM阻击高通:AI PC大战与芯片之争

引言 在AI PC领域,高通的X Elite芯片因为其高性能和低功耗,一度被认为是未来的主导者。然而,ARM公司却通过法律手段试图阻止高通的独大,这不仅可能拖慢AI PC的发展进程,还引发了业界的广泛关注。本文将深入探讨ARM和高…

基于gunicorn+flash+docker模型高并发部署教程

基于gunicorn、Flask和Docker模型的高并发部署是一个复杂的过程,但通过这种组合可以构建出高效、可扩展的Web应用。下面是一个简化的高并发部署教程,供您参考: 一、环境准备 安装Docker:首先,确保您的服务器上安装了…

今日头条屏幕适配深度剖析

基本概念 首先几个基本概念解释: ● dpi:该值代表的是一英寸上有多少个像素点,常见取值为120,160,240。一般这个值才叫做密度 在android里面获取的方法为 metrics.densityDpi; 屏幕尺寸/分辨率得出DPI,一个…

MySQL进阶——视图

目录 1基本语法 1.1创建 1.2 查询 1.3 修改 1.4 删除 2 检查选项 2.1 级联CASCADED 2.2本地LOCAL 3 更新及作用 3.1视图的更新条件 3.2视图的作用 4视图案例 1基本语法 视图(View)是一种虚拟存在的表。视图中的数据并不在数据库中实际存在&…