一、字符串

字符串是不可变序列,具有序列的公共操作方法,具体操作见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. 零元学Expression Blend 4 - Chapter 29 ListBox与Button结合运用的简单功能

    原文:零元学Expression Blend 4 - Chapter 29 ListBox与Button结合运用的简单功能 本章所讲的是运用ListBox.TextBox与Button,做出简单的列表 ...

  2. Qt Widget 利用 Qt4.5 实现酷炫透明窗体

    本文讲述的是Qt Widget 利用 Qt4.5 实现酷炫透明窗体,QWidget类中的每一个窗口部件都是矩形,并且它们按Z轴顺序排列的.一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分 ...

  3. zyltimer与ZylIdleTimer

    http://www.zylsoft.com/zyltimer.htmhttp://www.zylsoft.com/products.htm

  4. 预编译加速编译(precompiled_header),指定临时文件生成目录,使项目文件夹更干净(MOC_DIR,RCC_DIR, UI_DIR, OBJECTS_DIR),#pragma execution_character_set("UTF-8")"这个命令是在编译时产生作用的,而不是运行时

    预编译加速编译 QT也可以像VS那样使用预编译头文件来加速编译器的编译速度.首先在.pro文件中加入: CONFIG += precompiled_header 然后定义需要预编译的头文件: PREC ...

  5. 对Qt for Android的评价(很全面,基本已经没有问题了),可以重用QT积累20年的RTL是好事,QML效率是HTML5的5倍

    现在Qt不要光看跨平台了,Qt也有能力和原生应用进行较量的.可以直接去Qt官网查看他和那些厂商合作.关于和Java的比较,框架和Java进行比较似乎不且实际.如果是C++和Java比较,网上有很多文章 ...

  6. APP导航设计九法

    近期在设计APP原型,用EXCEL,用Axure.但无论工具如何,产品本身的界面布局和交互设计确实逃不掉的!网络中有关于APP导航设计的总结: 第一种:app标签导航  易用性:★★★★★   趣味性 ...

  7. java关键字之synchronized

    1.synchronized可以用了修饰一个普通方法,或者代码块,这个时候synchronized锁定的是当前对象,只要有一个线程在访问对应的方法或代码块,其他线程必须等待.2.synchronize ...

  8. ZooKeeper学习第五期--ZooKeeper管理分布式环境中的数据(转)

    转载来源:https://www.cnblogs.com/sunddenly/p/4092654.html 引言 本节本来是要介绍ZooKeeper的实现原理,但是ZooKeeper的原理比较复杂,它 ...

  9. 分布式数据库中间件 MyCat 搞起来!

    关于 MyCat 的铺垫文章已经写了三篇了: MySQL 只能做小项目?松哥要说几句公道话! 北冥有 Data,其名为鲲,鲲之大,一个 MySQL 放不下! What?Tomcat 竟然也算中间件? ...

  10. Vue.js 面试题整理

    Vue项目结构介绍 build 文件夹:用于存放 webpack 相关配置和脚本. config 文件夹:主要存放配置文件,比如配置开发环境的端口号.开启热加载或开启gzip压缩等. dist 文件夹 ...