返回总目录

目录:

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)之字符串类型的更多相关文章

  1. 数据类型总结——String(字符串类型)

    相关文章 简书原文:https://www.jianshu.com/p/546a755c3eb6 数据类型总结——概述:https://www.cnblogs.com/shcrk/p/9266015. ...

  2. Python数据类型中的字符串类型

    1.换行字符:\n print ('I love python.\nAnd you?') 2.转义字符(\):\\ print ('\\\n\\') 3.制表字符(对齐表格的各列):\t print ...

  3. 第二百九十五节,python操作redis缓存-字符串类型

    python操作redis缓存-字符串类型 首先要安装redis-py模块 python连接redis方式,有两种连接方式,一种是直接连接,一张是通过连接池连接 注意:以后我们都用的连接池方式连接,直 ...

  4. day08 数字,字符串类型内置方法

    目录 数字类型内置方法 为什么要有数据类型? 定义方式 方法 储存一个值or多个值? 有序or无序?(有序:有索引, 无序:无索引) 可变or不可变(可变:值变id不变,不可变:值变id也变) 字符串 ...

  5. 数据类型总结——Array(数组类型)

    相关文章 简书原文:https://www.jianshu.com/p/1e4425383a65 数据类型总结——概述:https://www.cnblogs.com/shcrk/p/9266015. ...

  6. 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 ...

  7. MySQL (二)-- 数据类型(列类型)、数值类型、 小数类型、 时间日期类型、 字符串类型 、 MySQL记录长度、列属性

    1 数据类型(列类型) 所谓的数据类型:对数据进行统一的分类,从系统的角度出发是为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中将数据类型分成了三大类: 2 数值类型 数值类型数据:都 ...

  8. redis数据类型-字符串类型

    Redis数据类型 字符串类型 字符串类型是Redis中最基本的数据类型,它能存储任何形式的字符串,包括二进制数据.你可以用其存储用户的邮箱.JSON化的对象甚至是一张图片.一个字符串类型键允许存储的 ...

  9. JavaScript数据类型 String字符串类型

    前言 javascript没有表示单个字符的字符型,只有字符串String类型,字符型相当于仅包含一个字符的字符串 字符串String是javascript基本数据类型,同时javascript也支持 ...

  10. day05数据类型,数字类型,字符串类型,字符串的操作方法,列表类型的操作方法,可变类型与不可变类型

    复习 ''' 流程控制 1.顺序结构.分支结构.循环结构 2.if分支结构 if 条件: 代码块 elif 条件: 代码块 else: 代码块 # 可以被if转换为False:0 | '' | Non ...

随机推荐

  1. 从零开始学 Web 之 jQuery(一)jQuery的概念,页面加载事件

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  2. Spring Boot + Spring Cloud 实现权限管理系统 后端篇(十九):服务消费(Ribbon、Feign)

    技术背景 上一篇教程中,我们利用Consul注册中心,实现了服务的注册和发现功能,这一篇我们来聊聊服务的调用.单体应用中,代码可以直接依赖,在代码中直接调用即可,但在微服务架构是分布式架构,服务都运行 ...

  3. 通过 Ansible 创建 Jenkins Server

    创建 CI 流程的第一件事应该是安装 CI 工具,本文以最常见的 Jenkins 为例,介绍如何使用 Ansible 自动安装 Jenkins Server.说明:本文的演示环境为 ubuntu 16 ...

  4. mybatis中动态SQL之trim详解

    一. 背景 之前mybatis中<where>.<update>.<if>.<foreach>标签用的多,知道有<trim>这个标签,但很少 ...

  5. 初步掌握node的路由控制

    1.1.2:node.js的路由控制 1.运行原理 在1.1.1节中,提到过app.js中app.get("/",routes.index)可以用以下代码取代: app.get(& ...

  6. kubernetes系列(一)安装和配置

    谈到kubernetes(或者说k8s)不得不提到云计算.虚拟化以及容器技术,相关介绍网上一大堆,不再赘述.而kubernetes的出现就是为了高效的管理云端运行的docker容器. 环境 docke ...

  7. 数据库的DevOps实践

    ---------------------------------------------------------------------------------------------------- ...

  8. Matlab Euler's method

    % matlab script to test efficiency of % Euler's method, classical Runge-Kutta, and ode45 % on Arenst ...

  9. 安装 kubernetes v1.11.1

    kubernetes 版本 v1.11.1 系统版本:Centos 7.4 3.10.0-693.el7.x86_64 master: 192.168.0.205 node1: 192.168.0.2 ...

  10. idea vue.js插件安装

    Vue.js for IntelliJ IDEA-based IDEs This plugin provides support for Vue.js in IntelliJ IDEA Ultimat ...