4.3Python数据类型(3)之字符串类型
目录:
1.字符串的概念
2.字符串的形式
3.字符串的转义符
4.字符串一般操作
5.字符串函数操作
(一)字符串的概念
由单个字符组成的一个集合
(二)字符串的形式
双引号与单引号的效果一样:
(1)使用单引号包含的
'abc'
(2)使用双引号包含的
"abc"
(3)使用3个单引号
''' abc '''
(4)使用3个双引号
""" abc """
# 字符串与注释
str1 = '单引号'
str2 = "双引号"
str3 = '''三个单引号'''
str4 = """三个双引号"""
print(str1)
print(str2)
print(str3)
print(str4)
'单引号也可以注释'
"双引号也可以注释"
'''三个单引号也可以注释'''
"""三个双引号也可以注释"""
-----------------输出-----------------
单引号
双引号
三个单引号
三个双引号
规律:其实不管是单引号还是双引号,还是三个单引号,还是三个双引号,他们都可以来处理字符串,而他们注释的原理的本质上就是没有把字符串赋值给变量,所以也没有什么用,就相当于注释了。
(三)字符串的转义符
(1)转义字符
通过转换某个指定的字符, 使它具备特殊的含义
\(在行尾时) 续行符
\' 单引号
\" 双引号
\n 换行
\t 横向制表符
# 转义字符
name = "s" \
"Z123"
print(name) # \续行符
print("12345645\\n") # \\-->\
print("单引号\'") # \'-->'
print("双引号\"") # \"-->"
-------------------输出--------------------------
sZ123
12345645\n
单引号'
双引号"
(2)取消转义字符
想要使转义字符不起作用时,可以在字符串前夹r
例如:使用单引号包含的
r'abc'
使用双引号包含的
r"abc"
使用3个单引号
r''' abc '''
使用3个双引号
r""" abc """
# 取消转义字符
print(r"12345645\\n") # \\-->没有效果
print(r"单引号\'") # \'-->没有效果
print(r"双引号\"") # \"-->没有效果
----------------输出--------------------
12345645\\n
单引号\'
双引号\"
(3)字符串的跨行书写:
(1)用\连接符
(2)用圆括号
(3)用三个单引号或者三个双引号
# 字符串的跨行书写:
str1 = "dfdf" \
"dfdf" # 用\连接符
str2 = ("fdjfjd"
"kfjdk") # 用圆括号
str3 = """dfdfdf
sfdfdfdg
""" # 用三个单引号或者三个双引号
print("用\连接符:", str1)
print("用圆括号:", str2)
print("用三个单引号或者三个双引号:", str3)
--------------输出--------------------
用\连接符: dfdfdfdf
用圆括号: fdjfjdkfjdk
用三个单引号或者三个双引号: dfdfdf
sfdfdfdg
(四)字符串一般操作
(1)字符串的拼接:
1.+ 号连接
2.无符号单行连接
3.格式化连接
4.倍数连接
# 字符的连接
print("+ 号连接", "xxxxx" + "yyyyyy")
print("无符号单行连接", "xxxxxx""yyyyyy")
print("格式化连接", "xxxx%s"%("yyyyyyyy"))
print("倍数连接", "xxxxx" * 3)
---------------------输出---------------
+ 号连接 xxxxxyyyyyy
无符号单行连接 xxxxxxyyyyyy
格式化连接 xxxxyyyyyyyy
倍数连接 xxxxxxxxxxxxxxx
(2)字符串的切片:
1.单个字符的切片:string[下标]
2.字符片段的切片:string[ 起始下标 : 结束下标 : 步长 ]
注:字符片段不包括结束字符,步长是用于跳着选择字符。
冒号左右两边没有数值时,默认分别对应是0,-1,1
# 字符的切片:
name = "社会我俊哥,人狠话不多"
# 字符串的索引是从0开始
print("name[0]", name[0]) # 第1个字符
print("name[1:4]", name[1:4]) # 第2字符到第4个字符,不包括第5个字符
print("name[::2]", name[::2]) # 步长为2的,跳字符。
print("name[-1]", name[-1]) # 倒数第1个字符
print("name[:5]", name[:5]) # 第1个字符到第6个
print("name[5:]", name[5:]) # 第6个字符到结束
print("name[:]", name[:]) # 全部字符
print("name[3:-3]", name[3:-3]) # 第4个字符到倒数第3个
print("name[::-1]", name[::-1]) # 字符倒序,反转字符串
---------------------输出----------------------------
name[0] 社
name[1:4] 会我俊
name[::2] 社我哥人话多
name[-1] 多
name[:5] 社会我俊哥
name[5:] ,人狠话不多
name[:] 社会我俊哥,人狠话不多
name[3:-3] 俊哥,人狠
name[::-1] 多不话狠人,哥俊我会社
本小节结束!
我是张一根,一个机械专业的大学生,一个在读本科的计算机爱好者,期盼和你一起交流计算机的知识,让我们在这个大时代里一起进步。
4.3Python数据类型(3)之字符串类型的更多相关文章
- 数据类型总结——String(字符串类型)
相关文章 简书原文:https://www.jianshu.com/p/546a755c3eb6 数据类型总结——概述:https://www.cnblogs.com/shcrk/p/9266015. ...
- Python数据类型中的字符串类型
1.换行字符:\n print ('I love python.\nAnd you?') 2.转义字符(\):\\ print ('\\\n\\') 3.制表字符(对齐表格的各列):\t print ...
- 第二百九十五节,python操作redis缓存-字符串类型
python操作redis缓存-字符串类型 首先要安装redis-py模块 python连接redis方式,有两种连接方式,一种是直接连接,一张是通过连接池连接 注意:以后我们都用的连接池方式连接,直 ...
- day08 数字,字符串类型内置方法
目录 数字类型内置方法 为什么要有数据类型? 定义方式 方法 储存一个值or多个值? 有序or无序?(有序:有索引, 无序:无索引) 可变or不可变(可变:值变id不变,不可变:值变id也变) 字符串 ...
- 数据类型总结——Array(数组类型)
相关文章 简书原文:https://www.jianshu.com/p/1e4425383a65 数据类型总结——概述:https://www.cnblogs.com/shcrk/p/9266015. ...
- 2016年11月3日JS脚本简介数据类型: 1.整型:int 2.小数类型: float(单精度) double(双精度) decimal () 3.字符类型: chr 4.字符串类型:sting 5.日期时间:datetime 6.布尔型数据:bool 7.对象类型:object 8.二进制:binary 语言类型: 1.强类型语言:c++ c c# java 2.弱类型语
数据类型: 1.整型:int 2.小数类型: float(单精度) double(双精度) decimal () 3.字符类型: chr 4.字符串类型:sting 5.日期时间:datetime 6 ...
- MySQL (二)-- 数据类型(列类型)、数值类型、 小数类型、 时间日期类型、 字符串类型 、 MySQL记录长度、列属性
1 数据类型(列类型) 所谓的数据类型:对数据进行统一的分类,从系统的角度出发是为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中将数据类型分成了三大类: 2 数值类型 数值类型数据:都 ...
- redis数据类型-字符串类型
Redis数据类型 字符串类型 字符串类型是Redis中最基本的数据类型,它能存储任何形式的字符串,包括二进制数据.你可以用其存储用户的邮箱.JSON化的对象甚至是一张图片.一个字符串类型键允许存储的 ...
- JavaScript数据类型 String字符串类型
前言 javascript没有表示单个字符的字符型,只有字符串String类型,字符型相当于仅包含一个字符的字符串 字符串String是javascript基本数据类型,同时javascript也支持 ...
- day05数据类型,数字类型,字符串类型,字符串的操作方法,列表类型的操作方法,可变类型与不可变类型
复习 ''' 流程控制 1.顺序结构.分支结构.循环结构 2.if分支结构 if 条件: 代码块 elif 条件: 代码块 else: 代码块 # 可以被if转换为False:0 | '' | Non ...
随机推荐
- SQL 必知必会·笔记<1>了解SQL
1.1 基本概念 数据库(DataBase) 保存有组织的数据库的容器(通常是一个文件或一组文件). 表(Table) 某种特定数据类型的结构化清单. 模式(Schema) 关于数据库和表的布局及特性 ...
- Docker两种方式进入后台运行的容器
1.在启动容器的时候,有时候我们加了参数-d,这时容器自动进入后台运行.如果我们要进入容器,该怎么办?通常使用docker attach命令和nsenter工具. 2.docker attach是Do ...
- scala-jdbc-scalike操作jdbc数据库
1, 引入maven依赖 <!-- 使用 sclaikeJDBC --> <dependency> <groupId>org.scalikejdbc</gro ...
- Java并发编程笔记之PriorityBlockingQueue源码分析
JDK 中无界优先级队列PriorityBlockingQueue 内部使用堆算法保证每次出队都是优先级最高的元素,元素入队时候是如何建堆的,元素出队后如何调整堆的平衡的? PriorityBlock ...
- centos swap
SWAP是Linux中的虚拟内存,用于扩充物理内存不足而用来存储临时数据存在的.它类似于Windows中的虚拟内存.在Windows中,只可以使用文件来当作虚拟内存.而linux可以文件或者分区来当作 ...
- Linux中ls命令用法
ls 命令的含义是list显示当前目录中的文件名字.注意不加参数它显示除隐藏文件外的所有文件及目录的名字. 1)ls –a 显示当前目录中的所有文件,包含隐藏文件 命令: aijian.shi@U-a ...
- Gulp Error: Cannot find module 'jshint/src/cli'
I'm following sitepoint's An introduction to Gulp.js, but I'm stuck on step four, when I try to run ...
- Shiro学习总结(1)——Apache Shiro简介
1.1 简介 Apache Shiro是Java的一个安全框架.目前,使用Apache Shiro的人越来越多,因为它相当简单,对比springSecurity,可能没有Spring Securit ...
- MVC 【Razor 视图引擎】基础操作 --页面跳转,传值,表单提交
ASPX 与 Razor 仅仅是视图不一样. 新建项目----ASP.NET MVC 4 Web 应用程序------选择模板(空).视图引擎(Razor ) 1.视图中 c# 代码 与 HT ...
- Spark集群的任务提交执行流程
本文转自:https://www.linuxidc.com/Linux/2018-02/150886.htm 一.Spark on Standalone 1.spark集群启动后,Worker向Mas ...