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. Golang GC原理

    一.内存泄漏 内存泄露,是从操作系统的角度上来阐述的,形象的比喻就是“操作系统可提供给所有进程的存储空间(虚拟内存空间)正在被某个进程榨干”,导致的原因就是程序在运行的时候,会不断地动态开辟的存储空间 ...

  2. Java并发编程笔记之Semaphore信号量源码分析

    JUC 中 Semaphore 的使用与原理分析,Semaphore 也是 Java 中的一个同步器,与 CountDownLatch 和 CycleBarrier 不同在于它内部的计数器是递增的,那 ...

  3. 海量日志实时收集系统架构设计与go语言实现

    日志收集系统应该说是到达一定规模的公司的标配了,一个能满足业务需求.运维成本低.稳定的日志收集系统对于运维的同学和日志使用方的同学都是非常nice的.然而这时理想中的日志收集系统,现实往往不是这样的. ...

  4. 【awesome-dotnet-core-learning】(1)-Sprache-解析器构建库

    [awesome-dotnet-core-learning](1)-Sprache-解析器构建库 关于awesome-dotnet-core-learning .NET Core从2016年发布1.0 ...

  5. Java设计模式学习记录-享元模式

    前言 享元模式也是一种结构型模式,这篇是介绍结构型模式的最后一篇了(因为代理模式很早之前就已经写过了).享元模式采用一个共享来避免大量拥有相同内容对象的开销.这种开销最常见.最直观的就是内存损耗. 享 ...

  6. macOS 系统 .DS_Store 文件详解

    .DS_Store 文件 .DS_Store 是 Finder 用来存储这个文件夹的显示属性的:比如文件图标的摆放位置. 显示/隐藏 Mac 隐藏文件 显示:defaults write com.ap ...

  7. noip之后的一些感受

    你经历过绝望吗,那种希望完全破碎,眼前看不到光亮,不知道下一步怎么走,不知道接下来应该如何生活的那种绝望? 我经历过. 2018.11.12 下午 秦皇岛到石家庄的高铁上 听着同学兴高采烈的讨论,自己 ...

  8. Java集合之HashSet源码分析

    概述 HashSet是基于HashMap来实现的, 底层采用HashMap的key来保存数据, 借此实现元素不重复, 因此HashSet的实现比较简单, 基本上的都是直接调用底层HashMap的相关方 ...

  9. API接口规范V1.0——制定好规范,才好合作开发

    返回码规范: 统一六位 000000 表示成功! 参数相关返回码预留100000-199999:系统相关返回码预留200000-299999:数据中心310000-319999后续项目以此类推,后续根 ...

  10. linux学习笔记-lrmi源码包的编译安装方法

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 官方的lrmi包没有人更新了,如果碰到需要这个编译安装这个包,可以参考我的解决思路,如下: https://pkgs.org/这 ...