split(sep=None, maxsplip=-1)

从左到右

sep 指定分隔字符串,缺省情况下空白字符串,指定的字符串会被切掉

maxsplit 指定分隔次数,-1 表示遍历

rsplit(sep=None, maxsplit=-1)

从右到左

...

splitlines([keepends])

按照行来分隔字符串

keepends 指的是是否保留行分隔符

行分隔符包括 \n, \r\n, \r 等

partition(sep)

从左到右,遇到分隔符就把字符串分割成两个部分,返回头,分隔符,尾三部分的三元组,如果没有找到分隔符,就返回头,两个空元素的三元组。

sep 必须指定。

rpartition(seq)

从右到左

字符串大小写

upper(): 全大写

lower(): 全小写

swapcase(): 交互大小写

字符串排版

title(): 标题的每个单词都大写

capitalize: 首个单词大写

center(width [,fillchar]): width 打印宽度,fillchar: 填充的字符

zfill(width): width 打印宽度,居右,左边用0填充

ljust(width[,fillchar]): 左对齐

rjust(width[,fillchar]): 右对齐

字符串修改

replace(old, new[,count]):

找到匹配字符串换为新串,count指定替换几次,不指定全部替换。

strip([chars]):

从字符串两端去除chars中字符,没有指定chars去除两端空格

字符串查找

find(sub[,start[,end]]):

在指定区间 [start, end],从左到右,查找子串 sub 。找到返回索引,没有返回 -1

rfind(sub[,start[,end]])

从右到左

index(sub[,start[,end]])

在指定区间[start, end],从左至右,查找子串sub。找到返回索引,没有找到抛出异常ValueError

count(sub[,start[,end]])

在指定区间 [start, end], 从左到右,统计子串 sub 出现的次数。

字符串判断

endswith(suffix[,start[,end]]):

在指定区间 [start, end],字符串是否是 suffix 结尾,返回 bool

startswith(prefix[,start[,end]]):

在指定区间 [start, end], 字符串是否是 prefix 开头, 返回 bool

is 系列

isalnum(): 是否是字母和数字组成

isalpha(): 是否是字母

isdecimal(): 是否只包含十进制数字

isdigit(): 是否全部数字(0-9)

islower(): 是否全都是小写

isupper(): 是否全部大写

isspace(): 是否只包含空白字符

字符串格式化

printf-style formatting

"I'm %03"%(20)

"I like %s"%'Python'

"I am %-5d"%(20)

format 函数格式字符串语法

"{} {xxx}".format(*args,**kwargs)
# args 是位置参数,是一个元组
# kwargs 是关键字参数,是一个字典
# 花括号表示占位符
# {} 表示按顺序匹配位置参数,{n}
# 表示取位置参数索引为n的值
# {xxx} 表示在关键字参数中搜索名称一致的
# {{}} 表示打印花括号
# 位置参数
"{},{}".format('1111',8888) # 这就是按照位置顺序用位置参数替换前面的格式字符串的占位符中
# 关键字参数或命名参数
"{server}{1}:{0}",format(8888,'192.168.0.1',server='Web Server Info')
# 访问元素
"{0[0]}.{0[1]}".format(('magedu','com'))
# 对象属性访问
Point = namedtuple('Point','x y')
p = Point(3,5)
"{{{0.x},{0.y}}}".format(p)
'{0}*{1}={2:>2}'.format(3,2,2*3) # 3*2=06
'{:>}' # 右对齐
'{:<}' # 左对齐
'{:^30}'.format('centered') # ^ 居中
'{:*^30}'.format('centered') # 居中并以 * 填充

进制

'int:{0:d};hex:{0:x};oct:{0:o};bin:{0:b}'.format(42)
'int:{0:d};hex:{0:#x};oct:(0:#o);bin:{0:#b}'.format(42) # 会显示进制符号 octets = [192,168,0,1]
'{:02X}{:02X}{:02X}{:02x}'.format(*octets) # * 表示解构

python基础 - 字符串作的更多相关文章

  1. python基础——字符串和编码

    python基础——字符串和编码 字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用 ...

  2. Python 基础-> 字符串,数字,变量

    Python 基础:字符串,数字,变量 1. 字符串 (信息的一种表达方式) a. 使用引号创建字符串 b. 单引号,双引号,三引号: ', ", ''', ""&quo ...

  3. Python基础-字符串格式化_百分号方式_format方式

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...

  4. Python 基础 字符串拼接 + if while for循环

    注释单行注释 #多行注释 ''' 三个单引号或者三个双引号 """ ''' 用三引号引住可以多行赋值 用户交互 input 字符串拼接 +  ""%( ...

  5. Python基础——字符串

    Python版本:3.6.2  操作系统:Windows  作者:SmallWZQ 在Python中,字符串也是一种数据类型.相比其它数据类型,字符串算是比较复杂的.为何呢?因为字符串不仅包含英文字母 ...

  6. python基础-字符串(6)

    一.引言 当打来浏览器登录某些网站的时候,需要输入密码,浏览器把密码传送到服务器后,服务器会对密码进行验证,其验证过程是把之前保存的密码与本次传递过去的密码进行对比,如果相等,那么就认为密码正确,否则 ...

  7. python基础——字符串、编码、格式化

    1.三种编码:ascii Unicode utf8 2.字符串和编码数字的两个函数:ord(字符转数字ord(‘A’)=65)和 chr(数字转字符chr(65)=A) 3.bytes存储编码,记住两 ...

  8. [Python] Python基础字符串

    Python的语法采用缩进的方式,一般使用四个空格,并且是大小写敏感的 字符编码 计算机只能处理数字,如果要处理文本,必须先把文本转换成数字才能处理 采用8个比特(bit)作为一个字节(byte) 一 ...

  9. Python基础(字符串和编码)

    字符编码 我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特 ...

随机推荐

  1. 从零开始学 Web 之 CSS3(四)边框图片,过渡

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

  2. 十大经典排序算法的 JavaScript 实现

    计算机领域的都多少掌握一点算法知识,其中排序算法是<数据结构与算法>中最基本的算法之一.排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大 ...

  3. Java基础之基本数据类型

    前言:Java内功心法之基本数据类型,看完这篇你向Java大神的路上又迈出了一步(有什么问题或者需要资料可以联系我的扣扣:734999078) 变量就是申请内存来存储值.也就是说,当创建变量的时候,需 ...

  4. #13 让代码变得Pythonic

    前言 在学习Python的过程中,肯定听说过这么一个词:Pythonic,它的意思是让你的代码很Python! 一.列表生成式 前面有一节专门讲解了Python的列表,其灵活的使用方法一定让你陶醉其中 ...

  5. [PHP] 算法-找出两个链表的第一个公共结点的PHP实现

    输入两个链表,找出它们的第一个公共结点 1.两个单链表,有公共结点,那么必然,尾部公用 2.找出链表1的长度,找出链表2的长度,长的链表减去短的链表得出一个n值 3.长的链表先走n步,两个链表再同时移 ...

  6. 【IDEA&&Eclipse】3、IntelliJ IDEA 的 20 个代码自动完成的特性

    在这篇文章中,我想向您展示 IntelliJ IDEA 中最棒的 20 个代码自动完成的特性,可让 Java 编码变得更加高效.对任何集成开发环境来说,代码的自动完成都是最最重要的一项功能,它根据你输 ...

  7. 01-初始Java

    1. 你学习编程的目的是什么?学习编程最快的办法是什么? 答:我喜欢计算机,想更多的了解计算机的原理:我认为学习最快的办法就是尝试,只有不断地在计算机上尝试编程,遇到错误, 解决错误,才能更快的学会编 ...

  8. Mysql锁原理浅谈

    锁类型/引擎 行锁 表锁 页锁 MyISAM 有 InnoDB 有 有 BDB(被InnoDB取代) 有 有 锁的分类 表锁:开销小,加锁快,不会死锁,粒度大,冲突率高,并发低. 行锁:开销大,加锁慢 ...

  9. CSS-高度塌陷问题

    目录 CSS-高度塌陷问题 表现 产生的原因 高度塌陷的解决办法: BFC相关 CSS-高度塌陷问题 表现 例如: HTML: <div class="first"> ...

  10. canvas-star4.html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...