python从0开始学习(十二)

news2024/11/15 18:17:55

目录

前言

1、字符串的常用操作

2、字符串的格式化

2.1 格式化字符串的详细格式(针对format形式)

​编辑

总结


前言

        上一篇文章我们讲解了两道关于组合数据类型的题目,本篇文章我们将学习新的章节,学习字符串及正则表达式。

1、字符串的常用操作

        下面用程序进行测试:

s1='HelloWorld'
s2=s1.lower()#转小写
print(s1,'\n'+s2)
print()

s3=s1.upper()#转大写
print(s3)
print()

#字符串的分割
e_mail='pxy@qq.com'
lst=e_mail.split('@')
print('邮箱名',lst[0],'邮箱服务器名',lst[1])

#统计子串出现的次数
print(s1.count('o'))
print()

#字符串的检索操作
print(s1.find('o'))
print(s1.find('p'))
#上面通过find查找,下面通过index查找
print(s1.index('o'))#注意,使用index查找的时候,找不到的话就会报错,但用find找没找到会返回-1不会报错
print()

#判断前缀和后缀的操作
print(s1.startswith('H'))
print(s1.startswith('P'))

print('demo.py'.endswith('.py'))
print('text.txt'.endswith('.txt'))

        字符串操作除了上述操作外,还有:

        程序进行测试:

s="HelloWorld"
#字符串的替换
s1=s.replace('o','你好')
print(s1)
print()

#字符串在指定的宽度范围内居中
print(s.center(20,'*'))#第一个参数是指定居中的宽度,第二个参数是指定未填充的部分填充什么,默认为空格。
print()

#去掉字符串左右的空格
s='     hello    world    '
print(s.strip())#去掉左右的空格
print(s.lstrip())#去掉左侧的空格
print(s.rstrip())#去掉右侧的空格
print()

#去掉指定的字符
s3='dl-Helloworld'
print(s3.strip('ld'))#取出字符中的ld和dl,这里去除的内容不考虑顺序,且只去掉左右两侧,中间出现不去除
print(s3.lstrip('ld'))#取出左侧的ld,与顺序无关
print(s3.rstrip('ld'))#去除右侧的ld,与顺序无关



2、字符串的格式化

        字符串格式化有三种方式:

        下面使用程序进行讲解:

#1)使用占位符进行格式化
name='马冬梅'
age=18
score=98.5
print('姓名:%s,年龄:%d,成绩:%.1f' %(name,age,score))#由于我们前面定义的三个变量类型不同,所以不能直接用加号连接,因此我们使用了占位符进行链接
print()

#2)使用f-string
print(f'姓名:{name},年龄:{age},成绩:{score}')
print()

#3)使用字符串的format方法
print('姓名:{0},年龄:{1},成绩:{2}'.format(name,age,score))#这里的{0}、{1}、{2}对应的是format后面的元素索引,可以进行改变,只需要在format后面也同时进行调整即可,如下
print('姓名:{2},年龄:{1},成绩:{0}'.format(score,age,name))

 

2.1 格式化字符串的详细格式(针对format形式)

        适用代码进行讲解:

s='helloworld'
print('{0:*<20}'.format(s)) #字符串显示宽度为20,左对齐,空白部分用*填充
print('{0:*>20}'.format(s)) #右对齐
print('{0:*^20}'.format(s)) #居中对齐
print()

#千位分隔符(只适用于整数和浮点数)
print('{0:,}'.format(987654321))
print('{0:,}'.format(987654321.987))
print()

#浮点数小数部分的精度
print('{0:.2f}'.format(3.1415926))
#字符串类型,表示的是最大的显示长度
print('{0:.5}'.format('helloworld'))
print()

#整数类型
a=425
print('二进制:{0:b},  十进制:{0:d},  十六进制:{0:x},  十六进制:{0:X}'.format(a))
print()

#浮点数类型
b=3.1415926
print('{0:.2f},  {0:.2E},  {0:.2e},  {0:.2%}'.format(b))

总结

        本篇文章先将到这,关于字符串生息的内容将在下一篇文章中讲解。本篇文章主要讲解了字符串的常用操作以及字符串的格式化,希望对你有所帮助。

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

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

相关文章

Gradle和Maven项目解决Spring Boot Configuration Annotation Processor not configured警告

问题描述 写了一个配置类,加了注解@ConfigurationProperties(prefix = “xxx”) 后一直报警告:Spring Boot Configuration Annotation Processor not configured 意思是 Spring boot 未配置注解处理器 解决过程 出现这个问题后,百度查了解决方式 1.maven项目 maven项目是…

logback 配置

https://zhuanlan.zhihu.com/p/673142694 配置结构 root 在 Logback 配置文件中&#xff0c; 元素用于配置根 Logger&#xff0c;它是整个日志系统的根节点。根 Logger 拥有最高级别&#xff0c;通常用于设置全局的日志级别和全局的 Appender&#xff08;附加器&#xff09;。…

[Algorithm][动态规划][路径问题][不同路径][不同路径Ⅱ][珠宝的最高价值]详细讲解

目录 1.不同路径1.题目链接2.算法原理详解3.代码实现 2.不同路径 II1.题目链接2.算法原理详解3.代码实现 3.珠宝的最高价值1.题目链接2.算法原理详解3.代码实现 1.不同路径 1.题目链接 不同路径 2.算法原理详解 思路&#xff1a; 确定状态表示 -> dp[i][j]的含义 走到dp[…

Mac 安装 git

文章目录 前言一、介绍二、下载三、验证四、配置五、Git常用命令六、git提交和撤销工作流程代码提交和提交同步代码撤销和撤销同步 FAQ1.homebrew 下载解决方法一&#xff08;强烈推荐&#xff09;&#xff1a;解决方法二&#xff1a; 总结 前言 Git 是一个开源的分布式版本控…

JavaScript 中的 Range 和 Selection 对象

JavaScript 中的 Range 和 Selection 对象 前言 最近在做鼠标框选的需求&#xff0c;鼠标框选就需要用到 Range 和 Selection 对象。 Range 表示选择的区间范围&#xff0c;Selection 表示选择的文档内容。 下面就详细说下这两个对象 一、Range Range 接口表示一个包含节…

太速科技-FMC125-两路125Msps AD,两路160Msps DA FMC子卡

FMC125-两路125Msps AD&#xff0c;两路160Msps DA FMC子卡 一、板卡概述 板卡可实现2路14bit 125Msps AD 和2路16bit 160MspsDA功能&#xff0c;FMC LPC连接器用于扩展到xilinx用于模拟信号、中频信号采集&#xff0c;信号发出等应用。 二、性能指标 板卡功能 参…

Vue3 Uncaught SyntaxError: Unexpected token <‘ 错误参考解决方法

1.最近在做一个登录首页的动画效果,动画组件是用的网上类似csdn方式,但是本地引入完全没问题,打包正式环境,直接报错,动画直接不起作用. 关于vue2的解决方法: 1.检查引用的 JavaScript 文件是否正确&#xff1a;确认所有引用的外部 JavaScript 文件路径是否正确&#xff0c;可…

陪玩系统源码,高质量的陪玩系统源码,游戏陪玩APP源码开发,语音陪玩源码搭建,整合需求精准定位

如今越来越多的人看到了游戏行业的市场&#xff0c;作为最近几年出现的一个新兴产业&#xff0c;需求是巨大的&#xff0c;因此开发陪玩app源码&#xff0c;正好可以优化服务体验来整合该市场。 原生陪玩源码or混合开发陪玩源码 游戏陪玩APP源码&#xff0c;基本上都是原生的&…

Docker安装MongoDB(Linux版)

文章目录 前言一、Docker环境的准备1.安装依赖2.安装Docker 二、使用Docker安装MongoDB1.mongo版本选取2.拉取合适的镜像3.宿主机创建MongoDB需要挂载的文件夹4.第一次无认证创建mongo用户5.启动需要认证的mongo容器 问题汇总总结 前言 本文章主要介绍在Centos系统&#xff0c…

ROS | 用IMU实现航向锁定

基本原理&#xff1a; 引入速度控制模块&#xff1a; /cmd_vel 设置目标角度&#xff0c;计算偏移差值 然后消息传递在z轴移动的角度 代码实现&#xff1a; C&#xff1a; CPP文件还需要编辑CMAKE文件 Python: Python文件需要给于权限&#xff1a;chmod x imu_node.py

【Muduo】三大核心之Poller、EPollPoller

Poller 在Muduo中&#xff0c;Poller负责基于IO多路复用机制进行IO事件监听和处理的组件&#xff0c;作为EPollPoller的基类&#xff0c;为后者提供了与PollPoller统一的IO复用接口&#xff0c;并且声明了一个关键的创建派生类的成员函数&#xff1a; static Poller *newDefa…

NDIS小端口驱动(五)

在需要的时候&#xff0c;我们也许需要NDIS微型端口程序信息&#xff0c;下面会从多个方面来讨论如何查询NDIS微型端口驱动。 查询无连接微型端口驱动程序 若要查询无连接微型端口驱动程序维护的 OID&#xff0c;绑定协议调用 NdisOidRequest 并传递 一个NDIS_OID_REQUEST 结…

OSPF多区域组网实验(华为)

思科设备参考&#xff1a;OSPF多区域组网实验&#xff08;思科&#xff09; 技术简介 OSPF多区域功能通过划分网络为多个逻辑区域来提高网络的可扩展性和管理性能。每个区域内部运行独立的SPF计算&#xff0c;而区域之间通过区域边界路由器进行路由信息交换。这种划分策略适用…

线性代数(二)

1.标量 标量也叫0D张量&#xff0c;一个标量就是一个数&#xff0c;它只有大小&#xff0c;没有方向。 import torch x torch.Tensor(3) print(x)2.向量 向量也叫1D张量。向量只有一个轴&#xff0c;沿着行的方向&#xff0c;或者沿着列的方向。向量一般指列向量。 import…

光伏储能EMS 风电智慧能量管理系统 -安科瑞王盼盼

安科瑞18721098782王盼盼 一&#xff1a;储能 EMS&#xff08;Energy Management System&#xff09; 储能 EMS&#xff1a;储能 EMS 是一个综合管理系统&#xff0c;用于整体管理和优化储能系统的运行。它基于电力系统的需求和需求响应&#xff0c;通过控制和协调储能设备的…

WPF中DataGrid实现多选框功能

1. 效果图 2. Model建立 public class RstModelCheck : ObservableObject {//为了显示Head1和Head2.而且View中绑定属性而非字段&#xff0c;否则不能显示。public string? Name { get; set; } public bool PlatenAll {get > _platenAll;set{SetProperty(ref _platenAl…

【代码随想录】【算法训练营】【第15天】 [102]二叉树的层序遍历 [226]翻转二叉树 [101]对称二叉树

前言 思路及算法思维&#xff0c;指路 代码随想录。 题目来自 LeetCode。 day 15&#xff0c;一周中最困难的周三~ 题目详情 [102] 二叉树的层序遍历 题目描述 102 二叉树的层序遍历 解题思路 前提&#xff1a;二叉树的层级遍历 思路&#xff1a;利用队列的“先进先出…

C#利用WinForm实现可以查看指定目录文件下所有图片

目录 一、关于Winform 二、创建应用 三、功能实现 四、代码部分 一、关于Winform Windows 窗体是用于生成 Windows 桌面应用的 UI 框架。 它提供了一种基于 Visual Studio 中提供的可视化设计器创建桌面应用的高效方法。 利用视觉对象控件的拖放放置等功能&#xff0c;可…

信捷PLC 编程常用寄存器及编程技巧说明

最近在用信捷的PLC&#xff0c;分享下常用的寄存器和编程技巧说明。 技巧主要包括以下几个方面&#xff1a; 充分规划各个功能区&#xff1a;在编写程序时&#xff0c;需要充分规划各个功能区。 考虑伺服步进功能和气缸手动功能的应用&#xff0c;手动操作时&#xff0c;可…

C语言 | Leetcode C语言题解之第107题二叉树的层序遍历II

题目&#xff1a; 题解&#xff1a; int** levelOrderBottom(struct TreeNode* root, int* returnSize, int** returnColumnSizes) {int** levelOrder malloc(sizeof(int*) * 2001);*returnColumnSizes malloc(sizeof(int) * 2001);*returnSize 0;if (!root) {return level…