Python 使用字符串
来源:互联网 发布:java object的方法 编辑:程序博客网 时间:2024/06/06 18:13
使用字符串
基本字符操作
所有的标准序列操作(索引、分片、乘法、判断成员资格、求长度、取最小值和最大值)对字符串同样适用。但是,字符串都是不可变的。
字符串格式化:精简版
在%左侧放置一个字符串,而右侧放置希望被格式化的值。
str = 'Hello. %s.%s enough for ya?'values = ('world','Hot')print str % values输出:
Hello. world.Hot enough for ya?
str = 'Pi with three decimals: %.3f'from math import piprint str % pi输出:
Pi with three decimals: 3.142
字符串格式化:完整版
格式化操作符的右操作数可以是任意类型。
如果右操作数是元组的话,则其中的每一个元素都会被单独格式化,每个值都需要一个对应的转换说明符。
print '%s plus %s equals %s'%(1,1,2)输出:
1 plus 1 equals 2
基本的转换说明符包括以下部分。注意,这些项的顺序是至关重要的。
%字符:标记转换说明符的开始。
转换标志:-表示左对齐;+表示在转换值之前要加上正负号;“”(空白字符)表示整数之前保留空格;0表示转换值若位数不够则用0填充。
最小字段宽度(可选):转换后的字符串至少应该具有该值指定的宽度。如果是×,则宽度会从值元组中读出。
点(.)后跟随精度值(可选):如果转换的是实数,精度值就表示出现在小数后的位数。如果转换的是字符串,那么该数字就表示最大的字段宽度。如果数×,那么精度将会从元组中选出。
简单转换
简单的转换只需要写出转换类型,使用起来很简单:
print 'Price of eggs:$%d'% 42print 'Hexadecimal price of eggs: %x' % 42from math import piprint 'Pi: %f'% piprint 'Very inexact estimate of pi: %i'% piprint 'Using str: %s'%42Lprint 'Using repr: %r'%42L输出:
Price of eggs:$42
Hexadecimal price of eggs: 2a
Pi: 3.141593
Very inexact estimate of pi: 3
Using str:42
Using repr:42
字段宽度和精度
from math import piprint '%10f'%piprint '%10.2f'%piprint '%.2f'%piprint '%.5s'%'Guido van Rossum'print '%.*s'%(5,'Guido van Rossum')输出:
3.141593
3.14
3.14
Guido
Guido
符号、对齐和用0填充
在字段宽度和精度之前还可以放置一个“标志”,该标志可以是0,加号、减号或空格。0表示数字将会用0进行填充。
# _*_coding:utf8_*_#使用给定的宽度打印格式化后的价格列表width = input('Please enter width:')price_width = 10;item_width = width-price_widthheader_format = '%-*s%*s'format = '%-*s%*.2f'print '=' * widthprint header_format % (item_width,'Item',price_width,'Price')print '-' * widthprint format %(item_width,'Apples',price_width,0.4)print format %(item_width,'Pears',price_width,0.5)print format %(item_width,'Cantaloupes',price_width,1.92)print format %(item_width,'Dried Apricots (16 oz.)',price_width,8)print format %(item_width,'Prunes(4 lbs.)',price_width,12)print '=' * width输出:
Please enter width:35
===================================
Item Price
-----------------------------------
Apples 0.40
Pears 0.50
Cantaloupes 1.92
Dried Apricots (16 oz.) 8.00
Prunes(4 lbs.) 12.00
===================================
字符串方法
find:
find方法可以在一个较长的字符串中查找子串。它返回子串所在位置的最左端索引。如果没有找到则返回-1。
print 'with a moo-moo here, and a moo-moo there'.find('moo')title = 'Monty Python\'s Flying Circus'print title.find('Monty')print title.find('Python')print title.find('Flying')print title.find('ABC')输出:
7
0
6
15
-1
# _*_coding:utf8_*_subject = '$$$ Get rich now!!!$$$'print subject.find('$$$')print subject.find('$$$',1)#只提供起点print subject.find('!!!')print subject.find('!!!',0,16)#提供起点和结束点输出:
0
19
16
-1
join:
join方法用来连接序列中的元素。
seq = '12345'sep = '+'print sep.join(seq)输出:
1+2+3+4+5
lower:
lower方法返回字符串的小写字母版。
a='ASDFGHJKL'print a.lower()name = 'Gumby'names = ['gumby','smith','jones']if name.lower() in names: print 'Found it'输出:
asdfghjkl
Found it
replace:
replace方法返回某字符串的所有匹配项均被替换之后得到字符串。
print 'This is a test'.replace('is','eez')输出:
Theez eez a test
split:
join的逆方法,将字符串分割。
a = '1+2+3+4+5+6+7+8'print a.split('+')输出:
['1', '2', '3', '4', '5', '6', '7', '8']
strip:
去除两侧空格。
a = ' 123 'print aprint a.strip()输出:
123
123
translate:
translate方法和replace方法一样,可以替换字符串中的某些部分,但是和前者不同的是,translate方法只能处理单个字符。他的优势在于可以同时进行多个替换,有些时候比replace效率高得多。
本章新函数
- python字符串使用总结
- python 字符串使用总结
- Python字符串使用总结
- python字符串使用总结
- Python 使用字符串
- python 字符串使用
- python中的字符串使用
- python 字符串使用庄族壮紫拙鬃
- python字符串使用问题
- Python基础--使用字符串
- Python 使用字符串
- python中使用字符串
- Python使用字符串
- Python中使用中文字符串
- Python字符串join使用示例
- python中字符串的使用
- python笔记三-使用字符串
- Python 第三章 使用字符串
- String、StringBuffer和StringBuilder
- GC(1.1OOPMap)
- APUE学习笔记2——第四章——文件和目录
- 什么是A类、B类、C类地址?
- 学习Caffe代码的方法心得
- Python 使用字符串
- java数据结构和算法(栈)
- CrapApiV6效果图
- 【安卓】安卓App开发思路 一步一个脚印(三)BaseActivity BaseFragment
- python挑战之level 28
- 循环
- 对于随机森林的通俗理解
- 【53.57%】【codeforces 722D】Generating Sets
- 嵌入式处理器