当前位置: 首页 > news >正文

【python】(一)字符串基本操作

目录

  • 1. 字符串操作的使用场景
  • 2. 字符串的定义
  • 3.字符串常用特殊字符
  • 4. 字符串格式化符号
  • 5. 字符串之字面量插值
  • 6. 字符串常用API
    • 6.1 join
    • 6.2 split
    • 6.3 replace
    • 6.4 strip


1. 字符串操作的使用场景

  • 数据提取之后的通用格式
    • 日志
    • excel
  • 第三方数据信息

2. 字符串的定义

  • 单行字符串使用" "来进行定义。
  • 多行字符串使用""" """来进行定义.
# 单行
str_a = "this is a str"

# 多行
str_b = """
这是一段字符串
霍格沃兹测试开发
"""

3.字符串常用特殊字符

转义字符描述作用
\n换行打印换行
\转义符打印有特殊含义的字符
# 换行
print("python \n 换行")
#  打印结果:
#    python 
#     换行

# 转义
print("python \\n 转义")
#  打印结果:
#   python \n 转义

4. 字符串格式化符号

符号描述
%c格式化字符及其ASCII码
%s格式化字符串
%d格式化整数
%u格式化无符号整型
%o格式化无符号八进制数
%x格式化无符号十六进制数
%X格式化无符号十六进制数(大写)
%f格式化浮点数字,可指定小数点后的精度
%e用科学计数法格式化浮点数
%p用十六进制数格式化变量的地址
# 测试学员替换掉 %s 的位置
print("Hello %s" %"python")

#将替换内容修改成111,执行成功
print("Hello %s" %111)
#原因:python将111当做string类型替换

5. 字符串之字面量插值

  1. "str".format()
# 不设置指定位置,按默认顺序
"{} {}".format("Hello", "python")  
# 设置指定位置
"{0} {1}".format("Hello", "python")
# 通过名称传递变量
"{name} Python".format(name="Hello")
  1. f"{变量}"
name = "Bob"
school = "清华大学"
# 通过 f"{变量名}" 
print(f"我的名字叫做{name}, 毕业于{school}")

6. 字符串常用API

6.1 join

join列表转换为字符串

a = ["p", "y", "t", "h", "o", "n"]
# 将列表中的每一个元素拼接起来
print("".join(a))
#打印结果:python

#使用“|”进行拼接
print("|".join(a))
#打印结果:p|y|t|h|o|n

6.2 split

split:数据切分操作,返回一个列表

# 根据split内的内容将字符串进行切分
demo = "Hello python"

#使用空格去进行demo的切分
demo.split(" ")
#切分结果 ['Hello', 'python']

#以"s"进行切分
demo.split("o")
#切分结果['Hell', ' pyth', 'n']
#注意:切分内容o,没有了

6.3 replace

replace:将目标的字符串替换为想要的字符串

# 将原字符串中的Java 替换为 Python
"Hello Java。".replace("Java", "Python")

6.4 strip

strip:去掉首尾的空格

str = " Hello Pyth on! "
print(str.strip())
#操作后结果:Hello Pyth on!
#前后没有空格了

相关文章:

  • 猿创征文|全方位快速了解事务的4种隔离级别
  • J9数字论:Web3.0对比传统Web2.0的区别
  • 《linux程序设计》笔记第一章
  • Java中的线程池的线程数量如何确定?
  • Jumpserver堡垒机部署(完整过程)
  • SpringBoot基于AOP实现RocketMQ发送与消费
  • 全球与中国亚麻籽行业消费量调研及未来产销需求分析报告2022-2028年
  • 链接装载与库:第八章——Linux共享库组织
  • java应用提速(速度与激情)
  • Java学习----Set接口
  • To enable Secure Boots and Flash Encryption using the ESP Flash download tool
  • FastFlow(2)---任务调度Task Schedule
  • 根据当前日期获取前一天日期-小工具
  • 金仓数据库KingbaseES客户端应用参考手册--12. sys_dumpall
  • 最详细说明spring cloud和Spring Cloud Alibaba的联系和区别
  • 2018一半小结一波
  • axios 和 cookie 的那些事
  • ES6 学习笔记(一)let,const和解构赋值
  • ES6核心特性
  • iOS帅气加载动画、通知视图、红包助手、引导页、导航栏、朋友圈、小游戏等效果源码...
  • JAVA多线程机制解析-volatilesynchronized
  • leetcode388. Longest Absolute File Path
  • Linux快速配置 VIM 实现语法高亮 补全 缩进等功能
  • 高程读书笔记 第六章 面向对象程序设计
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 工作手记之html2canvas使用概述
  • 京东美团研发面经
  • 类orAPI - 收藏集 - 掘金
  • 面试总结JavaScript篇
  • 如何胜任知名企业的商业数据分析师?
  • 删除表内多余的重复数据
  • 深入浅出webpack学习(1)--核心概念
  • 使用 Docker 部署 Spring Boot项目
  • 学习ES6 变量的解构赋值
  • 在GitHub多个账号上使用不同的SSH的配置方法
  • $redis-setphp_redis Set命令,php操作Redis Set函数介绍
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (windows2012共享文件夹和防火墙设置
  • (二)Linux——Linux常用指令
  • (五)c52学习之旅-静态数码管
  • (一)基于IDEA的JAVA基础10
  • (原創) 系統分析和系統設計有什麼差別? (OO)
  • (转)Sql Server 保留几位小数的两种做法
  • (转)项目管理杂谈-我所期望的新人
  • .NET Core 控制台程序读 appsettings.json 、注依赖、配日志、设 IOptions
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .net FrameWork简介,数组,枚举
  • .NET NPOI导出Excel详解
  • .NET Reactor简单使用教程
  • .net 调用php,php 调用.net com组件 --
  • .net经典笔试题
  • .Net语言中的StringBuilder:入门到精通
  • /etc/shadow字段详解
  • /etc/sudoer文件配置简析
  • /usr/local/nginx/logs/nginx.pid failed (2: No such file or directory)