字符串本质是:字符序列
不可变

1、字符串编码,Unicode
ord('A')
ord('王')
2、创建字符串,引号
a = 'Hello python!'
b = "I'm a teacher!"
c = """
name
age
job
"""
d = '' # 空字符串
3、转义字符   “\+特殊字符”
  \(在行尾时) 续行符
  \\ 反斜杠符号
  \' 单引号
  \" 双引号
  \b 退格
  \n 换行
  \t 制表符
  \r 回车
4、字符串拼接
  1)+号连接
  字符串+字符串——拼接
  数字+数字——计算
  类型不同——报错
  2)可以将多个字符串直接放在一起实现拼接
print('abc' + 'cde')
print('abc' 'cde')
  结果:abccde
     abccde

5、字符串复制
print('abc'* 10)

  结果:abcabcabcabcabcabcabcabcabcabc

6、不换行打印
print('doc', end='\t')     # 制表符结尾
print('wang', end=' ') # 空格结尾
print('王', end='*') # *号结尾

7、从控制台读取字符串
name = input("请输入姓名:")    # 返回字符串
print(name)
8、str()函数,将其他类型转为字符串
print(str(3.33))
print(str(True))
9、提取字符串——索引
a = 'abcdefghijklmnopqrstuvwxyz'    # 左侧从0开始,右侧从-1开始
print(a[0]) 
print(a[3])
print(a[-1])

  返回结果:

        a

        d

        z

10、replace()实现字符串替换,本质是创建了新的字符串对象
b = a.replace('c', '王')
print(a)
print(b)
11、切片
print(a[:])    # 提取整个字符串
print(a[1:4])
print(a[3:8:2]) # 步长为2 print(a[-3:])
print(a[::-1]) # 将字符串倒序排列 print(a[12:300]) # 不报错,至末尾
12、split()分割
a = "to be or not to be"
print(a.split()) # 以空格分割
print(a.split('be')) # 以be分割
13、join(),字符串拼接
a = ['wang', 'and', 'zhang']
print('*'.join(a))
print(''.join(a))
print(' '.join(a))

14、字符串驻留机制
对于符合标识符规则的字符串(仅包含下划线、字母和数字),会启用
a = 'abc_33'
b = 'abc_33'
print(a is b) # True c = 'abc#'
d = 'abc#'
print(c is d) # 交互界面为False,pycharm为True
print(id(c))
print(id(d))

15、字符串比较和同一性
print(a == b)    # 比较值是否相等
print(a is b) # 比较是否为同一对象

16、成员操作符 in / not in
print('a' in a)
print('d' in a)

17、查找方法
a = '岸柳可藏鸦。路转溪斜。忘机鸥鹭立汀沙。咫尺钟山迷望眼,一半云遮。\
临水整乌纱。两鬓苍华。故乡心事在天涯。几日不来春便老,开尽桃花。' print(len(a)) # 字符串长度
print(a.startswith('岸柳可藏鸦')) # 是否以指定字符串开头
print(a.endswith('开尽桃花。')) # 是否以指定字符串结尾
print(a.find('路')) # 第一次出现位置
print(a.rfind('路')) # 最后一次出现位置
print(a.count('华')) # 出现次数
print(a.isalnum()) # 受否为字母数字

18、去除首尾信息
b = '           开尽桃花       '
print(b.strip()) # 去除首尾空格,可传参数,去除指定字符
print(b.lstrip()) # 去除左侧空格,可传参数,去除指定字符
print(b.strip()) # 去除右侧空格,可传参数,去除指定字符

19、大小写转换,均产生新的字符串
c = 'I love you,Baby!'
print(c.capitalize()) # 首字母大写
print(c.title()) # 标题
print(c.upper()) # 全部大写
print(c.lower()) # 全部小写
print(c.swapcase()) # 大小写转换

20、格式排版
print(c.center(40, '*'))    # 指定字符串,c居中,不足以*补齐,缺省为空格补齐
print(c.ljust(40)) # 左对齐
print(c.rjust(40)) # 右对齐

21、其他方法
c = '枯藤老树昏鸦'
print(c.isalnum()) # 是否为字母数字
print(c.isalpha()) # 是否为字母(包括汉字)
print(c.isdigit()) # 是否为数字
print('\t\n'.isspace()) # 是否为空白符
print(c.isupper()) # 是否为大写字母
print(c.islower()) # 是否为小写字母

22、字符串格式化
msg = "名字是:{0},年龄是:{1}"
m = msg.format('doc wang', 22)
print(m) msg = "名字是:{name},年龄是:{age}"
m = msg.format(name='doctor', age=18)
print(m)

23、填充和对齐
^、<、>分别是居中、左对齐、右对齐,后面带宽度

r = "{:*>8}".format("234")
"""
说明:*号表示用填充字符(缺省为空格填充),>右对齐,8表示填充为8个字符
"""
print(r)

24、数字格式化
a = "我是{},我的工资为{:1.2f}"
print(a.format('doc wang', 3500.23723)) b = "{:0>2d}".format(5)
c = "{:+.2f}".format(3.141592)
print(b)
print(c)

{:.2f} 保留2位小数
{:+.2f} 带符号,保留2位小数
{:.0f} 不带小数
{:0>2d} 数字补零(填充左边,宽度为2)
{:0<4d} 数字补零(填充右边,宽度为4)
{:x<4d} 数字补x(填充右边,宽度为4)
{:,} 以逗号分隔的数字格式
{:.2%} 百分比格式
{:.2e} 指数记法
{:10d} 右对齐(默认,宽度为10)
{:<10d} 左对齐(宽度为10)
{:^10d} 居中对齐(宽度为10)

25、可变字符串
import io
s = "hello,python"
sio = io.StringIO(s)
print(sio)
sio.seek(7)
sio.write('王')
print(sio.getvalue())

数据类型之字符串(string)(四)的更多相关文章

  1. python基本数据类型之字符串(四)

    python基本数据类型之字符串(四) 判断方法 python中有一类用来判断字符串形式的方法,该类方法有两个特点:(1)方法名都是is开头(除了startswith和endswith):(2)返回值 ...

  2. Javascript基础系列之(三)数据类型 (字符串 String)

    javascript一共有9种数据类型 字符串 String 数值型 Number 布尔型 Boolean 未定义 Undefine 空值 Null 对象 Object 引用Refernce 列表型 ...

  3. python 数据类型: 字符串String / 列表List / 元组Tuple / 集合Set / 字典Dictionary

    #python中标准数据类型 字符串String 列表List 元组Tuple 集合Set 字典Dictionary 铭记:变量无类型,对象有类型 #单个变量赋值 countn00 = '; #整数 ...

  4. Redis数据类型之字符串String

    String类型是Redis中最基本也最简单的一种数据类型 首先演示一些常用的命令 一.SET key value 和GET key SET key value 和 GET key  设置键值和获取值 ...

  5. Python基础-python数据类型之字符串(四)

    字符串 字符串是python中常用的数据类型,使用('或")来创建. 创建字符串: 下标索引 字符串实际上是字符的数组,所以也支持索引. str1 = 'abcdef' 切片 定义:切片是指 ...

  6. 4-Python3从入门到实战—基础之数据类型(字符串-String)

    Python从入门到实战系列--目录 字符串表示 在 Python 3版本中,字符串是以 Unicode 编码的:Python 中使用 ' '或者" "表示字符串 msg = 'H ...

  7. JavaScript:七大基础数据类型:字符串string

    在JS中,字符串类型的数据,有三种表达方式,但是无一例外都是需要引号扩起来的: 单引号'hello' 双引号"hello" 反引号`hello` 注意: 因为JS没有字符类型,这一 ...

  8. Java中字符串string的数据类型

    Java中字符串string的数据类型 时间:2017-07-03 08:01:47 YuanMxy 原文:https://blog.csdn.net/YuanMxy/article/details/ ...

  9. java基础之 数据类型 & 值传递 引用传递 & String & 四种引用类型

    一.Java数据类型 分为基本数据类型与引用数据类型 基本数据类型: byte:Java中最小的数据类型,在内存中占1个字节(8 bit),取值范围-128~127,默认值0 short:短整型,2个 ...

  10. 前端总结·基础篇·JS(一)五大数据类型之字符串(String)

    前端总结系列 前端总结·基础篇·CSS(一)布局 前端总结·基础篇·CSS(二)视觉 前端总结·基础篇·CSS(二)补充 前端总结·基础篇·JS(一)五大数据类型之字符串(String) 目录 这是& ...

随机推荐

  1. [seaborn] seaborn学习笔记6-热图HEATMAPPLOT

    6 热图Heatmapplot(代码下载) 热图是指通过将矩阵单个的值表示为颜色的图形表示.热力图显示数值数据的一般视图非常有用,制作热图很简单,且不需要提取特定数据点.在seaborn中使用heat ...

  2. Google分布式文件系统GFS论文学习

    GFS作为最著名的分布式文件系统,首先具备了大规模.可扩展.适配大文件.自动运维等高级特性.虽然是比较早期的分布式文件系统,但是它里面的设计思想还是值得现代分布式系统设计参考的,并且还有很多后期著名的 ...

  3. 经典 backbone 总结

    目录 目录 VGG ResNet Inceptionv3 Resnetv2 ResNeXt Darknet53 DenseNet CSPNet VoVNet 一些结论 参考资料 VGG VGG网络结构 ...

  4. Django推导流程,Django模块的下载和基本使用、Django的应用和目录结构讲解、Django三板斧

    今日内容 纯手撸web框架 1.web框架的本质: 理解1:连接前端与数据库的中间介质 理解2:socket服务端 2.手写web框架: 1.编写socket服务端代码 import socket s ...

  5. python读取kafka,输出到Vertica数据库

    # 主测试 # https://docs.python.org/2/library/json.html import sys import json import vertica_python imp ...

  6. vue打包---放到服务器下(一个服务器多个项目需要配置路径),以及哈希模式和历史模式的不同配置方法

    哈希模式,好用,不需要服务器配合分配路径指向,自己单机就可以打开了 接下来上代码截图 接下来开始截图 历史模式 历史模式需要后端支持 打包后自己直接点击是打不开的 截图如下

  7. ORM哪家强?java,c#,php,python,go 逐一对比, 网友直呼:全面客观

    前言 最近一段时间,我使用golang开发了一个新的ORM库. 为了让这个库更好用,我比较研究了各语言的主流ORM库,发现有一些语言的ORM库确实很好用,而有另外一些语言的库那不是一般的难用. 然后我 ...

  8. Grafana 系列文章(四):Grafana Explore

    ️URL: https://grafana.com/docs/grafana/latest/explore/ Description: Explore Grafana 的仪表盘 UI 是关于构建可视化 ...

  9. java通过idea启动查看类加载来源信息

    本文为博主原创,转载请注明出处: jdk 8 环境时,可以在启动的环境中配置 :-XX:+TraceClassLoading    进行启动时查看 jdk 11 环境时,可以在启动的JVM 环境中配置 ...

  10. P27_wxss - 全局样式和局部样式

    全局样式 定义在 app.wxss 中的样式为全局样式,作用于每一个页面. 局部样式 在页面的 .wxss 文件中定义的样式为局部样式,只作用于当前页面. 注意: 当局部样式和全局样式冲突时,根据就近 ...