五、字符串处理函数

 len(x):字符串x的长度。如len("12345")结果为5

 str(x):任意类型x所对应的字符串形式。

  1. >>> str(123)
  2. '123'
  3. >>> str([1,2])
  4. '[1, 2]'

 hex(x)或oct(x):整数x的十六进制或八进制小写形式字符串。

 chr(x):x为Unicode编码,返回其对应的字符

  ord(x):x为字符,返回其对应的Unicode编码。Unicode编码,即统一字符编码,即覆盖几乎所有字符的编码方式(包括各个国家不同语言的不同字符,将不同语言同一起来,有一套对应的统一编码),从0到0x10FFFF空间大小,即从0到1114111个字符编码,每个编码对应一个字符,python字符串中的每个字符都是Unicode编码字符。我们看一些有趣的例子:

  1. >>> "1+1 = 2" + chr(10004)
  2. '1+1 = 2✔'
    这里对号对应的unicode编码为10004
  3. >> "金牛星座符号的unicode值是:" + str(ord("♉"))
  4. '金牛星座符号的unicode值是:9801'
  5. >>> for i in range(12):
  6. print(chr(9800 + i), end="")
  7. ♈♉♊♋♌♍♎♏♐♑♒♓
    这里要注意这个end="",加上它,表示字符不换行,否则会换行。
  8. >>> for i in range(3):
  9. print(chr(9800 + i))


六、字符串处理方法

str.lower()或者str.upper():返回字符串的副本,全部字符小写或大写

  1. >>> "ABCdsf".lower()
  2. 'abcdsf'
  3. >>> "abcECF".upper()
  4. 'ABCECF'

str.split(sep=None):返回一个列表,由str根据sep被分隔的部分组成,返回为一个列表类型

  1. >>> "A,B,C,D,E,F,".split(",")
  2. ['A', 'B', 'C', 'D', 'E', 'F', '']

str.count(sub):返回子串sub在str中出现的次数

  1. >>> "what day is it today".count("a")
  2. 3

str.replace(old,new):返回字符串str副本,所有old子串被替换为new

  1. >>> "abc".replace("a","what")
  2. 'whatbc'

str.center(width[,fillchar]):字符串str根据宽度width居中,fillchar可选,为填充的字符。默认填充空格

  1. >>> "python".center(20)
  2. ' python '
  3. >>> "python".center(20,"-")
  4. '-------python-------'

str.strip(chars):从str中去掉在其左侧和右侧chars中列出的字符

  1. >>> "*:audit-2-7-5.x86.rpm".strip("*:.x86rpm")
  2. 'audit-2-7-5'

str.join(iter):在iter变量除最后元素外每个元素后增加一个str

  1. >>> ",".join("12345")
  2. '1,2,3,4,5'

七、字符串类型的格式化

<模板字符串>.format(<逗号分隔的参数>)

我们把将要格式话的字符串用{}槽来表示,按照默认顺序来进行格式化,从0开始,也可以自己定义格式化的顺序,如下:

  1. >>> "{}:CPU{}的CPU占用率为{}%".format("log", 1, 20)
  2. 'log:CPU1的CPU占用率为20%'
  3. >>> "{1}:CPU{0}的CPU占用率为{2}%".format(1,"log",20)
  4. 'log:CPU1的CPU占用率为20%'

format方法的格式控制

:<填充><对齐><宽度><,><.精度><类型>

:为引导符号,对应format中的第几个参数,如果为空,表示按顺序对应,从0开始;

<填充>用于填充的单个字符;<对齐>对齐方式,<左对齐  >右对齐  ^居中对齐;<宽度>槽设定的输出宽度;前面三个为字符串的操作,主要是用来排版对齐,这种对齐填充方式,对于排版来说非常方便有用。format中的参数为数字也是可以的。

  1. >>> "{:=^20}".format("python")
  2. '=======python======='
  3. >>> "{:*<20}python".format("BIT")
  4. 'BIT*****************python'
  5. >>> "{:10}".format("BIT") '''默认填充空格'''
  6. 'BIT '
  7. >>> "{:<<10}".format("BIT") '''第一个参数为填充,第二个为对齐方式'''
  8. 'BIT<<<<<<<'

<,>数字的千位分隔符;<.精度>浮点数或小数精度或字符串最大输出长度;<类型>整数类型:b,c,d,o,x,X  浮点数类型:e,E,f,% ; 后面三个为数字的操作,我们看一些列子:

  1. >>> "{:,.2f}".format(12345.456)
  2. '12,345.46'
  3. >>> "{0:b}, {0:c}, {0:d}, {0:o}, {0:x}, {1:X}".format(, )
  4. '110101001, Ʃ, 425, 651, 1a9, 1AA' '''分别对应,二进制,字符,十进制,八进制,十六机制小写,十六进制大写'''
  5. >>> "{0:e}, {0:E}, {0:f}, {0:%}".format(3.14)
  6. '3.140000e+00, 3.140000E+00, 3.140000, 314.000000%' '''最后一个为 输出百分号形式'''

当宽度为变量时,可以以槽来表示,看如下这个例子,输出为以*组成的等边三角形。

  1. #test4.py
  2. n=int(input())
  3. for i in range(n+)[::]:
  4. print("{: ^{}}".format("*"*i,n))

结果为

  1. *
  2. ***
  3. *****

python学习笔记(5-1)-基本数据类型-字符串类型及操作的更多相关文章

  1. Python学习笔记(二):字符串类型

    在上一篇随笔(https://www.cnblogs.com/g-qiang/p/10448813.html)中,说到 Python 有六种标准数据类型,而数字类型和字符串类型又是其中基本的数据类型. ...

  2. python学习笔记(2)数据类型-字符串

    字符串是 Python 中最常用的数据类型.我们可以使用引号( ' 或 " )来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: var1 = 'Hello World!' ...

  3. Python学习笔记(二)——数据类型

    1.数据类型 Python有五个标准的数据类型: Numbers(数字) String(字符串) List(列表) Tuple(元组) Dictionary(字典) 2.Python数字类型 Pyth ...

  4. Python学习笔记(三)数据类型

    在内存中存储的数据可以有多种类型,在Python中,能够直接处理的数据类型有以下几种: 数字(Numbers) 字符串(String) 列表(List) 元组(Tuple) 字典(Dictionary ...

  5. Python学习笔记:第3天 字符串的操作

    目录 1. python的数据类型 2. int类型的操作 3. bool类型 4. 字符串的操作 5. for循环 1. python的数据类型 int 整数 str 字符串.一般不会用字符串保存大 ...

  6. python学习笔记(二)— 数据类型

    一.变量.数据类型 1.计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同 ...

  7. Python学习笔记2:基本数据类型

    Python中的变量不需要声明.每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象 ...

  8. Python学习笔记整理总结【Django】:Model操作(一)

    Model操作(一) 一.Django ORM基本配置 ORM:关系对象映射(Object Relational Mapping,简称ORM)db Frist:到目前为止,当我们的程序涉及到数据库相关 ...

  9. python学习笔记(5)-基本数据类型-字符串类型及操作

    一.字符串 字符串由一对单引号或者双引号表示,如”abc“,‘中国’,字符串是字符的有序序列,可以对其中的字符进行索引.字符串也可以用三单引号或三双引号表示,可以表示多行字符串,一对单引号或双引号仅表 ...

随机推荐

  1. UVA1627-Team them up!(二分图判断+动态规划)

    Problem UVA1627-Team them up! Total Submissions:1228  Solved:139 Time Limit: 3000 mSec Problem Descr ...

  2. 06 python初学 (列表内置方法)

    目录: type(a) is list :判断 a 是不是列表.返回 True False count:计算列表内某一元素出现的次数 extend:在列表末尾一次性添加另一列表中的全部值 index: ...

  3. springmvc中messageConverter用法

    解决StringHttpMessageConverter乱码问题问题: 当我们将字符串对象通过springmvc传回浏览器时,因为StringHttpMessageConverter消息转换器中默认的 ...

  4. Emacs 中使用中文插件 eim

    在 Emacs 中输入中文,一般用 ibus 一类的输入法也能应付,但来回切换有点麻烦,这里介绍国人写的一个好插件 eim. - 安装 由于在 list-packages 中没有找到这个插件,所以不能 ...

  5. [intoj#7]最短距离

    190227模拟 题目描述 给定一张 N 个点的有向图,点 i 到点 j 有一条长度为 i/gcd(i,j) 的边. 有个 Q 询问,每个询问包含两个数 x, y,求从点 x 出发到点 y 的最短距离 ...

  6. 在Ubuntu上快速搭建基于Beego的RESTful API

    最近在研究Go,打算基于Go做点Web API,于是经过初步调研,打算用Beego这个框架,然后再结合其中提供的ORM以及Swagger的集成,可以快速搭建一个RESTful API的网站. 下面是具 ...

  7. 【Java并发.2】线程安全性

    要编写线程安全的代码,其核心在于要对状态访问操作进行管理,特别是对共享(Shared)和可变的(Mutable)状态的访问. “共享”意味着变量可以由多个线程同时访问,而“可变”则意味着变量的值在其生 ...

  8. python第五章:文件--小白博客

    文件操作, 操作文件完毕后一定要记得close # 读,默认是rt(文本的方式读取),rb模式是以字节读取 # 文件路径可以用3中形式表示 f = open(r'C:\Users\fengzi\Des ...

  9. 旋转数组的最小数字 - 剑指offer 面试题8

    题目描述: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转.输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素.例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋 ...

  10. 009-定时关闭弹出广告窗口 By BoAi 20190414

    ;~ 定时关闭弹出广告窗口 By BoAi 20190414 ; ### 参数设置段 ######################################SingleInstance,forc ...