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

Python学习教程(二)字符串

Python学习教程(二)字符串

  • 前言
  • 1.定义字符串
  • 2 .常用方法
      • 2.1 字符串拼接
      • 2.2 字符串类型转换
      • 2.3 格式化字符串

前言

上一篇我们学习了怎样安装python的开发环境以及基本数据类型,这一篇我们聊聊字符串,字符串在任何语言中都广泛使用,也都会单独开一篇讲解,由于本人才开始接触python,关于字符串,目前学到都是一些基础知识,如果后续学习中再有涉及到字符串相关知识,我会持续更新,废话不多说,开始今天的学习。

1.定义字符串

定义字符串有三种方法,单引号,双引号,三个双引号,直接上代码,会比较直观。

  • 单引号
s1 = 'hello python'
  • 双引号
s2 = "hello python"
  • 三个双引号
    适合带有换行,缩进等文章的原样输出时,使用三个双引号来定义
s3 = """ ==================== hello python ==================== """

这里三个单引号也可以定义字符串,官方推荐使用三个双引号

s4 = ''' ==================== hello python ==================== '''

拓展
上边讲解了常用的定义字符串方法,我们来拓展下其他方法
a) 双引号字符串中定义双引号怎么办,python为我们提供了转义符:\,直接上代码

s5 = "hello \"python"

b) 单引号字符串中定义双引号的字符串,直接写双引号就可以

s6 = 'hello "python'

同样,单引号的字符串中使用转义符定义单引号以及双引号字符串中直接写单引号

s5 = 'hello \'python' s6 = "hello 'python"

c) 定义字符串的一行代码中,可以同时写两个字符串,解析器解析时,会自动为我们合并成一个字符串,这个知识了解一下,很少用到

s7 = "hello""python"

两个字符串之间也可以用空格隔开

s7 = "hello" "python"

和java对比
java中常使用单引号定义单个字符,双引号定义字符串,
定义带有换行的字符串时,手动加换行符
这里区别就比较明显

2 .常用方法

2.1 字符串拼接

拼接两个字符串,使用加号:+

s8 = "hello" s9 = "python" s10 = s8 + "," +s9

注意点
字符串拼接时,只能字符串和字符串拼接,字符串和int类型变量拼接时就会报错,看下边代码

num1 = 10 s11 = "hello python" s12 = s11 + num1

编译时没有问题,代码执行会报以下错误

s12 = s11 + num1 ~~~~^~~~~~ TypeError: can only concatenate str (not "int") to str

怎样解决这个问题呢,对了,需要类型转换,我们下一节2.2会讲到。

和java对比
java中string可以拼接任何类型

2.2 字符串类型转换

2.1讲到,字符串只能和字符串拼接,如果想拼接int类型变量时,只能将int类型转化成字符串,再进行拼接,使用到str()这个方法,上代码

num1 = 10 s11 = "hello python" s12 = s11 + str(num1)

这样代码可以正常执行了

和java对比
java中就有很多转字符串的方法,String.valueOf(),int型变量+""等,还有很多工具类,这时我就体会到java的强大之处,在我心里java还是世界上最好的语言,不接受反驳,哈哈

2.3 格式化字符串

就会提到占位符(%s),使用百分号(%)连接要替换占位符的参数,直接上代码会比较直观

print("hello %s" % "python")

输出结果

hello python

有多个占位符时,替换的参数用逗号隔开,并且用括号括起来

print("hello %s %s" % ("py","thon"))

输出结果

hello py thon

还有一种方法是在字符串的双括号前写一个f,需要替换的变量使用大括号括起来

f"内容{变量}"

代码

name = "python" print(f"hello {name}")

输出结果

hello python

和java对比
和java中的MessageFormat类,以及java8以后的String.format方法一样

字符串的基本用法先写到这里,如果对你有帮助,点赞加关注,下篇见。

http://www.jsqmd.com/news/613310/

相关文章:

  • **发散创新:基于角色权限模型的代码保护机制设计与实现**在现代软件
  • DoubleQoL:3大核心功能重塑《工业队长》游戏体验
  • 技术赋能语音AI:开源语音数据集实战指南
  • 28.【RTL_Synthesis】Timing Closure Techniques(时序收敛技术)
  • 2026汕头定制家具选型指南:3个硬指标必看 - 精选优质企业推荐榜
  • 惠普15.6英寸触屏笔记本降至570美元值得入手
  • 2026年正规智能客服公司,热门推荐技术系统选型攻略 - 品牌2026
  • 2026 年最新云南文体用品十大品牌推荐及解析,全方位解析各品牌核心竞争力 - 十大品牌榜
  • Spring Boot 4.0 Agent-Ready设计深度解密(JVM字节码增强+SPI 3.0双引擎驱动)
  • 如何用VideoDownloadHelper轻松下载网页视频:新手必备指南
  • 2026 年最新云南职业装与校服十大品牌推荐及解析 - 十大品牌榜
  • Talebook个人书库NAS部署指南:3步打造你的私有云图书馆
  • Snap.Hutao:Windows原神玩家的终极桌面工具箱完全指南
  • 2026江西55SiCr弹簧钢丝优质供应商推荐榜 - 资讯焦点
  • AICoverGen语音转换全攻略:从基础搭建到创意实践
  • Sketch Measure插件工作流优化与团队协作指南:从安装到规范交付全解析
  • 2026年4月深圳优秀的婚姻律师事务所有哪些,律师/婚姻律师/离婚律师,婚姻律师工作室口碑推荐 - 品牌推荐师
  • 2026火车高铁模型优质厂家推荐 适配多领域需求 - 资讯焦点
  • 2026年陕西日语机构怎么选?看懂“国际课程+日语”融合新趋势,思润给出答案 - 深度智识库
  • 任天堂游戏文件编辑全攻略:从入门到精通Switch-Toolbox
  • 3步让旧电脑焕发新生:Win11Debloat系统优化完全指南
  • 最棒的office全家桶激活软件:LKY office tools
  • Blazor微前端落地全景图:6大核心模块解耦策略,含模块联邦加载时序图与跨团队契约规范(限免下载至2026.06.30)
  • 【程序源代码】客户关系管理系统(含后台源码)
  • 龙芯k - 走马观碑组MPU驱动移植睹
  • 科技赋能,严定贵带领嘉银科技让金融活水精准润泽实体经济 - 资讯焦点
  • 5步打造极速系统:Win11Debloat全方位优化指南
  • 2026歌度床垫测评,解析行业口碑实力相关情况,歌度床垫,歌度床垫测评抗菌性能怎么样 - 品牌推荐师
  • DataRoom:企业级数据可视化大屏的终极解决方案
  • 2026 年最新云南工装十大品牌推荐及解析 - 十大品牌榜