一、字符串

字符串是不可变序列,具有序列的公共操作方法,具体操作见python笔记(1)--序列(列表 元组 range)

1、创建字符串

单引号:'Hello , I am Logan ! '

双引号:"Hello , I am Logan ! "

三引号:'''Hello , I am Logan !'''  or  " " "Hello , I am Logan !" " "

2、字符串的操作方法

序号 操作 结果
1 str.capitalize() 返回字符串的拷贝,首字符大写,其余字符小写
2 str.casefold() 返回字符串的拷贝,所有字符变小写(不仅仅用于英文)
3 str.center(width[,fillchar]) 用fillchar填充字符串到指定的宽度width并且居中,默认用空格填充,宽度小于或等于原字符串,将返回原字符串
4 str.count(sub[,start[,end]]) 返回子字符串sub在start到end-1里出现的次数
5 str.endswith(suffix[,start[,end]]) 如果字符串以suffix结尾则返回True,否则返回False,可附加范围start到end-1,suffix为元组或者字符串
6 str.find(sub[,start[,end]]) 返回子字符串的起始位置,没有发现返回-1
7 str.join(iterable) 用str将iterable每个元素分隔组成字符串
8 str.isalpha() 如果字符串中的所有字符都是字母并且至少有一个字符,则返回true,否则返回false
9

str.isdecimal()

如果字符串中的所有字符都是十进制字符并且至少有一个字符,则返回true,否则返回false
10 str.islower() 如果字符串中的所有大小写字符都是小写,并且至少有一个大小写字符,则返回true,否则返回false
11 str.isspace() 如果字符串中只有空白字符并且至少有一个字符,则返回true,否则返回false
12 str.istitle() 如果字符串中所有的单词拼写首字母为大写,且其他字母为小写则返回 True,否则返回 False
13 str.isupper() 如果字符串中的所有大小写字符都为大写并且至少有一个大小写字符,则返回true,否则返回false
14 str.ljust(width[,fillchar]) 用fillchar填充字符串到指定的宽度width并且左对齐,默认用空格填充,宽度小于或等于原字符串,将返回原字符串
15 str.rjust(width[,fillchar]) 用fillchar填充字符串到指定的宽度width并且右对齐,默认用空格填充,宽度小于或等于原字符串,将返回原字符串
16 str.rpartition(sep) 在sep的最后一次出现处拆分字符串,并返回包含分隔符前面的部分、分隔符本身和分隔符后面的部分的3元组。如果找不到分隔符,则返回一个包含两个空字符串的3元组,后跟字符串本身
17 str.replace(old,new[,count]) 返回字符串的副本,其中所有出现的子字符串old都被new替换。如果给定了可选参数整数count,则只替换前count次
18 str.split(sep=None,maxsplit=-1) 返回字符串中的单词列表,使用sep作为分隔符拆分字符串。如果给定了maxsplit,则最多执行maxsplit次拆分(因此,列表将最多包含maxsplit+1个元素)
19 str.startswith(prefix[,start[,end]]) 如果字符串以prefix开头则返回True,否则返回False,可附加范围start到end-1,prefix为元组或者字符串
20 str.title() 字符串中所有首字符大写,其余字符小写
21 str.upper() 返回字符串的拷贝,所有字符变大写
22 str.zfill(width) 字符串左边填充0,到宽度width

3、字符串的操作方法实例

3.1、str.capitalize()

a='heKkkl fjksA'
print(a.capitalize())
Hekkkl fjksa

3.2、str.casefold()

a='heKkkl fjksA'
print(a.casefold())
hekkkl fjksa

3.3、str.center(width[,fillchar])

a='heKkkl fjksA'
print(a.center(30,'*'))
*********heKkkl fjksA*********

3.4、str.count(sub[,start[,end]])

a='heKkkl fjksA'
print(a.count('kk',0,5))
1

3.5、str.endswith(suffix[,start[,end]])

a = 'heKkkl fjksA'
b = 'sA'
c = ('a','A','B')
print(a.endswith(b),a.endswith(c))
True True

3.6、str.find(sub[,start[,end]])

a = 'heKkkl fjksA'
print(a.find('kkl'),a.find('kkl',0,5))
3 -1

3.7、str.join(iterable)

a = 'heKkkl fjksA'
c = ('a','A','B')
print('|'.join(a))
print('#'.join(c))
h|e|K|k|k|l| |f|j|k|s|A
a#A#B

3.8、str.isalpha()

a = 'heKkkl fjksA'
b = 'sA'
print(a.isalpha(),b.isalpha())
False True

3.9、str.isdecimal()

a='123A'
b = ''
print(a.isdecimal(),b.isdecimal())
False True

3.10、str.islower()

a = 'heKkkl fjksA'
b = 'ab 123c'
print(a.islower(),b.islower())
False True

3.11、str.isspace()

a = '\t\n'
b = ' '
print(a.isspace(),b.isspace())
True True

3.12、str.istitle()

a = 'hekkl FjksA'
b = 'Hekkl FjksA'
c = 'Hekkl Fjksa'
print(a.istitle(),b.istitle(),c.istitle())
False False True

3.13、str.isupper()

a = 'heKkkl fjksA'
b = 'AB 123C'
print(a.isupper(),b.isupper())
False True

3.14、str.ljust(width[,fillchar])

b = 'AB 123C'
print(b.ljust(20,'#'))
AB 123C#############

3.15、str.rjust(width[,fillchar])

b = 'AB 123C'
print(b.rjust(20,'#'))
#############AB 123C

3.16、str.rpartition(sep)

b = 'hgksgjjjjjhls'
print(b.rpartition('j'))
print(b.rpartition('a'))
('hgksgjjjj', 'j', 'hls')
('', '', 'hgksgjjjjjhls')

3.17、str.replace(old,new[,count])

b = 'hgksgjjjjjhls'
print(b.replace('j','J',2))
hgksgJJjjjhls

3.18、str.split(sep=None,maxsplit=-1)

b = 'hgksgjjjjjhls'
print(b.split('j',3))
['hgksg', '', '', 'jjhls']

3.19、str.startswith(prefix[,start[,end]])

b = 'hgksgjjjjjhls'
u = ('h','a')
w = 'hg'
True True

3.20、str.title()

a = 'heKkkl fjksA'
print(a.title())
Hekkkl Fjksa

3.21、str.upper()

a = 'heKkkl fjksA'
print(a.upper())
HEKKKL FJKSA

3.22、str.zfill(width)

a = '61A'
print(a.zfill(8))
0000061A

 4、字符串格式化(str.format())

4.1、用指定位置的参数替换占位符

a = '{1} {0}'.format('world','Hello')
b = '{0} {1}'.format('Hello','everyone')
print(a)
print(b)
Hello world
Hello everyone

4.2、用指定名字的参数替换占位符

a = 'I am {name},I am a {sex}'.format(name='Bob',sex='boy')
someone = {'name':'Jerry','sex':'girl'}
b = 'I am {name},I am a {sex}'.format(**someone)
print(a)
print(b)
I am Bob,I am a boy
I am Jerry,I am a girl

4.3、用对象的属性替换占位符

c = 3-5j
a = '复数{0}的实部是{0.real},虚部是{0.imag}'.format(c)
print(a)
复数(3-5j)的实部是3.0,虚部是-5.0

4.4、通过索引用可迭代对象替换占位符

a = ['a','b','c','d']
b = '{a},{a[0]},{a[1]}'.format(a=a)
c = '{0},{0[2]},{0[3]}'.format(a)
print(b)
print(c)
['a', 'b', 'c', 'd'],a,b
['a', 'b', 'c', 'd'],c,d

4.5、字符串对齐

a = '#{:<30}#'.format('left aligned')
b = '#{:>30}#'.format('right aligned')
c = '#{:^30}#'.format('centered')
d = '#{:*^30}#'.format('centered')
print(a)
print(b)
print(c)
print(d)
#left aligned                  #
# right aligned#
# centered #
#***********centered***********#

4.6、符号问题

a = '#{:-d},{:-d}#'.format(-9,9)  #只显示负号,相当于{:d}
b = '#{: d},{: d}#'.format(-9,9) #负数显示负号,正数显示空格
c = '#{:+d},{:+d}#'.format(-9,9) #正负号都显示
print(a)
print(b)
print(c)
#-9,9#
#-9, 9#
#-9,+9#

4.7、进制问题

a = "int: {0:d};  hex: {0:x};  oct: {0:o};  bin: {0:b}".format(42)
b = "int: {0:d}; hex: {0:#x}; oct: {0:#o}; bin: {0:#b}".format(42) #井号代表显示前缀
print(a)
print(b)
int: 42;  hex: 2a;  oct: 52;  bin: 101010
int: 42; hex: 0x2a; oct: 0o52; bin: 0b101010

4.8、百分数

a = "ansers:{:.3%}".format(2/3)
print(a)
ansers:66.667%

python笔记(2)--字符串的更多相关文章

  1. python笔记之字符串

    列表,元组,字符串的相互转换: 将字符串转换为序列和元组: >>> s="hello" >>> list(s)['h', 'e', 'l', ' ...

  2. python笔记3——字符串的操作

    #Author:Wildwolf name="my name is wildwolf ," print(name.capitalize()) #首字母大写 print(name.c ...

  3. python3.4学习笔记(二十一) python实现指定字符串补全空格、前面填充0的方法

    python3.4学习笔记(二十一) python实现指定字符串补全空格.前面填充0的方法 Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0.zfill()方法语法:s ...

  4. 【Python学习笔记】字符串操作

    字符串的表示 python中的字符串是一个常量,可以使用单引号'',双引号""或三引号""" """来创建一个字符串常量 ...

  5. Python学习笔记整理(四)Python中的字符串..

    字符串是一个有序的字符集合,用于存储和表现基于文本的信息. 常见的字符串常量和表达式 T1=‘’ 空字符串 T2="diege's" 双引号 T3=""&quo ...

  6. Python学习笔记(3)-字符串

    创建字符串 一对单引号或双引号 >>> 'hello world' 'hello world' >>> "hello world" 'hello ...

  7. python笔记2-数据类型:字符串常用操作

    这次主要介绍字符串常用操作方法及例子 1.python字符串 在python中声明一个字符串,通常有三种方法:在它的两边加上单引号.双引号或者三引号,如下: name = 'hello' name1 ...

  8. Python自学笔记之字符串的操作

    1.将字符串全部变为小写:lower() casefold() 范围更广 2.将字符串全部变为大写:upper() 3.判断是否大小写:isupper() islower() 4.居中:center( ...

  9. Python笔记之不可不练

    如果您已经有了一定的Python编程基础,那么本文就是为您的编程能力锦上添花,如果您刚刚开始对Python有一点点兴趣,不怕,Python的重点基础知识已经总结在博文<Python笔记之不可不知 ...

随机推荐

  1. socket编程详解,转自http://www.sme-cn.com:82/archives/669

    一  Socket简介 Socket翻译过来是套接字,具体含义可自行百度,简言之就是IP:Port的组合,是网络通信的一个窗口,IP就是地址和门牌号(比如长沙市韶山北路81号),Port就是房间号(比 ...

  2. WM_SIZE后于WM_CREATE消息!!在窗口被创建时的顺序!

    WM_SIZE   procedure WMSize (var Message: TWMSize); message WM_SIZE; 参数说明 wParam: Specifies the type ...

  3. TIFF图片简介

    每个TIFF文件都是从指示字节顺序的两个字节开始的.“II”表示小字节在先.“MM”表示大字节在先字节顺序.后面的两个字节表示数字42.数字42是“为了其深刻的哲学意义"而选择的. 42的读 ...

  4. [转载]关于Java reference的一篇博文

    不再额外的叨叨了,直接附上原地址: https://community.oracle.com/people/enicholas/blog/2006/05/04/understanding-weak-r ...

  5. linux输出信息调试信息重定向

    最近在做一个android系统移植的项目,所使用的开发板com1是调试串口,就是说会有uboot和kernel的调试信息打印在com1上(ttySAC0).因为后期要使用ttySAC0作为上层应用通信 ...

  6. CentOS 如何删除/delete/remove 老的 kernel

    package-cleanup --oldkernels --count=1

  7. 系统学习 Java IO (九)----缓冲流 BufferedInputStream/BufferedOutputStream

    目录:系统学习 Java IO---- 目录,概览 BufferedInputStream BufferedInputStream 类为输入流提供缓冲. 缓冲可以加快IO的速度. BufferedIn ...

  8. 【设计模式】行为型06命令模式(Command Pattern)

    命令模式 个人理解:命令模式,本质上是一种多层次的封装. 好处:降低耦合,扩展极其方便. 以下一段文案摘抄自:http://www.runoob.com/design-pattern/command- ...

  9. Jenkins的安装与使用(一)

    jenkins是一个广泛用于持续构建的可视化web工具,持续构建说得更直白点,就是各种项目的"自动化"编译.打包.分发部署.jenkins可以很好的支持各种语言(比如:java, ...

  10. Spring Boot2(七):拦截器和过滤器

    一.前言 过滤器和拦截器两者都具有AOP的切面思想,关于aop切面,可以看上一篇文章.过滤器filter和拦截器interceptor都属于面向切面编程的具体实现. 二.过滤器 过滤器工作原理 从上图 ...