python学习记录16
字符串总结
python程序使用unicode编码,中文字符与英文字符都占一个字符,但英文字符只占一个字节,中文字符若按照utf-8格式编码占3个字节。
(1)字符串常用方法
1)大小写转化
string.upper()#将所有字母转换为大写
string.lower()#将所有字母转换为小写
2)字符串分割
string.split(sep='')#将字符串按照sep进行分割
3)字符串的检索
string.count('sub')#统计字符串中某个子串的出现次数
string.find(‘sub’)#查询字符串中是否有查询的子串,有则返回第一次出现子串的索引,没有则返回-1
string.index('sub')#与find类似,区别是若字符串无该子串,则程序报错
4)字符串判断
string.startswith('sub')#判断字符串是否以查询的子串为开头
string.endswith('sub')#判断字符串是否以查询的子串结尾
5)字符串替换
string.replace('sub1','sub2')#将字符串所有子串1替换为子串2
6)字符串显示
string.center(width,'fillchar')#在指定的范围内居中,可指定填充字符,默认为空格
7)字符串拼接
string.join(iterable)#将可迭代的对象组(列表、元组、字符串等)合为一个字符串,其中string为分隔符
8)去除字符串前后字符
string.strip('sub')#去除字符串中头部与尾部指定的字串
string.lstrip('sub')#去除字符串中头部指定的字串
string.rstrip('sub')#去除字符串中尾部指定的字串
(2)格式化字符串
1)使用占位符
"%+型"%(变量名,变量名……)其中()中的变量是一个元组类型的数据
2)f-string
(f'{变量名} {变量名,……}'
3)format
"模板字符串".format(变量,变量……)
(3)字符串编码与解码
1)字符串编码
string.encode(’编码格式‘,’错误处理‘)#编码格式默认utf-8,错误处理包括严格strict(遇到无法编码的字符直接报错)、忽略ignore(遇到无法编码的字符直接跳过)、替换replace(遇到无法编码的字符使用字符替换,默认是’?‘)
2)字符串解码
byte.decode('解码格式',’错误处理‘)#解码格式与编码格式必须一致
(4)数据验证
1)string.isdigit()#判断字符串是否全为阿拉伯数字
2)string.isnumeric()#判断字符串是否全为数字(包括罗马数字、中文的一二三四)
3)string.isalpha()#判断字符串是否全为字母或汉字
4)string.isalnum()#判断字符串是否全为数字或字母(包括中文字符)
5)string.islower()#判断字符串中的字母是否全为小写
6)string.isupper()#判断字符串中的字母是否全为大写
7)string.istitle()#判断字符串中的单词是否全为首字母大写
8)string.isspace()#判断字符串是否都为空白、转义字符\t\n等
(5)字符串去重
有三种方式
1)使用遍历
2)使用索引+遍历
3)使用集合+列表
(6)正则表达式
1)元字符
具有特殊意义的专用字符,例如^和$,用于表达匹配的开始与结束,此外还有:
. :用于匹配任一字符(除\n外)
\w:用于匹配数字、字母、下划线
\W:用于匹配数字、字母、下划线以外的其他字符
\s:用于匹配空白字符
\S:用于匹配空白字符以外的字符
\d:用于匹配任意十进制数
2)限定符
限定符是限定匹配的次数,限定符包括:
? :匹配前面的字符一次或0次
+ :匹配前面的字符一次或多次
* :匹配*前面的字符0次或多次
{n}:匹配前面的字符n次
{n,}:匹配前面的字符至少n次
{n,m}:匹配前面的字符至少n次,至多m次
3)区间字符
可以使用[]匹配[]中的字符,例如[\u4e00-\u9fa5]是匹配任意一个汉字
4)排除字符
使用[^]匹配不在[]中指定的字符
5)选择字符
用于匹配|左右的任意字符
6)转义字符
\,同转义字符
7)分组
改变限定符的作用
(7)re模块
re模块是python自带模块,无需要下载。模式字符前加r以排除转义字符防止报错。
1)re.match(pattern,string,flags=0)#从字符串开始的位置进行匹配,指match只在字符串的起始位置寻找而不找后面,若在起始位置找到了,结果为Match对象,否则结果为None
2)re.search(pattern,string,flags=0)#在整个字符串中搜索第一个匹配的值,如果匹配成功,则返回结果为match类型的数据,否则为None
3)re.findall(pattern,string,flags=0)#在整个字符串中搜索所有匹配正则表达式的值,结果是一个列表类型的数据
4)re.sub(pattern,repl,string,count,flags=0)#用于对字符串中指定子串的替换
5)re.split(pattern,string,maxsplit,flags=0)#与字符串的split方法功能相同,都是分隔字符串,split最后输出一个列表类型的数据
相关文章:
python学习记录16
字符串总结 python程序使用unicode编码,中文字符与英文字符都占一个字符,但英文字符只占一个字节,中文字符若按照utf-8格式编码占3个字节。 (1)字符串常用方法 1)大小写转化 string.upper()#将所有字母…...
AI 大模型在软件开发中的角色
语法定义的 React 组件。…...
Day62||prim算法精讲 |kruskal算法精讲
prim算法精讲 53. 寻宝(第七期模拟笔试) 题目描述 在世界的某个区域,有一些分散的神秘岛屿,每个岛屿上都有一种珍稀的资源或者宝藏。国王打算在这些岛屿上建公路,方便运输。 不同岛屿之间,路途距离不同&…...
upload-labs通关练习
目录 环境搭建 第一关 第二关 第三关 第四关 第五关 第六关 第七关 第八关 第九关 第十关 第十一关 第十二关 第十三关 第十四关 第十五关 第十六关 第十七关 第十八关 第十九关 第二十关 总结 环境搭建 upload-labs是一个使用php语言编写的,…...
wordpress搭建主题可配置json
网站首页展示 在线访问链接 http://dahua.bloggo.chat/ 配置json文件 我使用的是argon主题,你需要先安装好主题,然后可以导入我的json文件一键配置。 需要json界面配置文件的,可以在评论区回复,看见评论我会私发给你。~...
RWKV-5/6 论文被 COLM 2024 收录
由 Bo PENG 和 RWKV 开源社区共同完成的 RWKV-5/6架构论文《Eagle and Finch: RWKV with Matrix-Valued States and Dynamic Recurrence》被顶级会议 COLM 2024 收录。 这是继 RWKV-4 架构论文《RWKV: Reinventing RNNs for the Transformer Era》被 EMNLP 2023 收录之后&…...
MinIO分片下载超大文件
一、前言 各位亲爱的们,之前介绍过了上传超大文件到MinIO: MinIO分片上传超大文件(纯服务端)MinIO分片上传超大文件(非纯服务端) 这里最后再补充一下从MinIO下载超大文件。 二、从MinIO分片下载大文件 …...
Vue3 -- 新组件【谁学谁真香系列6】
Teleport Teleport是什么?–Teleport是一种能够将我们的组件html结构移动到指定位置的技术。 父组件: <template><div calss="outer"><h2>我是App组件</h2><img src="https://z1.ax1x.com/2023/11/19/piNxLo4.jpg" alt=&qu…...
Openstack3--本地仓库搭建(ftp源搭建失败)
上传镜像 后面的ftp源做不了,请将下面的本地openstack源在控制节点和计算节点都配置 在控制节点上传,安装ftp并配置启动后再在计算节点配置 将openStack-train.iso文件通过MobaXterm远程连接软件上传至控制节点 /opt 目录下 挂载 进入 /opt 目录 创建…...
【初阶数据结构与算法】链表刷题之移除链表元素、反转链表、找中间节点、合并有序链表、链表的回文结构
文章目录 一、移除链表元素思路一思路二 二、合并两个有序链表思路:优化: 三、反转链表思路一思路二 四、链表的中间节点思路一思路二 五、综合应用之链表的回文结构思路一:思路二: 一、移除链表元素 题目链接:https:…...
【PGCCC】Postgresql Toast 原理
前言 上篇博客讲述了 postgresql 如何存储变长数据,它的应用主要是在 toast 。Toast 在存储大型数据时,会将它存储在单独的表中(称为 toast 表)。因为 postgresql 的 tuple(行数据)是存在在 Page 中的&…...
vue3使用element-plus,树组件el-tree增加引导线
vue3使用element-plus,树组件el-tree增加引导线 vue3项目element-plus,树组件el-tree增加引导线 element-plus组件库的el-tree样式 因为element的样式不满足当前的的需求,UI图,所以对el-tree进行增加了引导线 修改样式如下&am…...
AlphaFold3中文使用说明
目录 1. 在线网站用例1. 使用json输入预测蛋白结构 2. 本地命令行2.1 运行示例2.2 AF3输入输入格式JSON兼容性JSON最外层(Top-level)结构序列多序列比对MSA结构模板键 用户提供CCDs 2.3 AF3输出 AlphaFold3(AF3)可以通过在线网站或…...
使用@react-three/fiber,@mkkellogg/gaussian-splats-3d加载.splat,.ply,.ksplat文件
前言 假设您正在现有项目中集成这些包,而该项目的构建工具为 Webpack 或 Vite。同时,您对 Three.js 和 React 有一定的了解。如果您发现有任何错误或有更好的方法,请随时留言。 安装 npm install three types/three react-three/fiber rea…...
Koa进阶:掌握中间件和参数校验的艺术
目录 一、首先下载依赖 二、在index.js中引入koa-parameter,一般挂载这个中间件时会放在注册请求体的后面 三、使用实例 四、如果跟我们所需求的参数不同,返回结果直接会返回422 koa-parameter一般是用来校验请求传过来的参数是否是自己所需要的的 G…...
开源共建 | 长安链开发常见问题及规避
长安链开源社区鼓励社区成员参与社区共建,参与形式包括不限于代码贡献、文章撰写、社区答疑等。腾讯云区块链王燕飞在参与长安链测试工作过程中,深入细致地总结了长安链实际开发应用中的常见问题及其有效的规避方法,相关内容多次解答社区成员…...
【网络】深入理解 HTTPS:确保数据传输安全的核心协议
目录 引言一、HTTPS的基本概念1.1 什么是 HTTPS?1.2 HTTPS 的工作原理1.3 图解:HTTPS 通信过程1.4 HTTPS 与 HTTP 的区别1.5 为什么 HTTPS 更加重要? 二、SSL/TLS协议的核心2.1 SSL/TLS 协议的作用2.2 SSL/TLS 的工作流程2.2.1 握手阶段2.2.2…...
C/C++中使用MYSQL
首先要保证下载好mysql的库和头文件,头文件在/usr/include/mysql/目录下,库在/usr/lib64/mysql/目录下: 一般情况下,在我们安装mysql的时候,这些都提前配置好了,如果没有就重装一下mysql。如果重装mysql还是…...
【GD32】(一) 开发方式简介及标准库开发入门
文章目录 0 前言1 开发方式选择2 标准库模板的创建3 遇到的问题和解决方法 0 前言 因为项目关系,需要使用GD32。之前对此早有耳闻,知道这个是一个STM32的替代品,据说甚至可以直接烧录STM32的程序(一般是同型号)&#x…...
R语言AI模型部署方案:精准离线运行详解
R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...
376. Wiggle Subsequence
376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...
04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
leetcodeSQL解题:3564. 季节性销售分析
leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...
JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...
Spring数据访问模块设计
前面我们已经完成了IoC和web模块的设计,聪明的码友立马就知道了,该到数据访问模块了,要不就这俩玩个6啊,查库势在必行,至此,它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据(数据库、No…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
前端中slice和splic的区别
1. slice slice 用于从数组中提取一部分元素,返回一个新的数组。 特点: 不修改原数组:slice 不会改变原数组,而是返回一个新的数组。提取数组的部分:slice 会根据指定的开始索引和结束索引提取数组的一部分。不包含…...
