Python字符串学习与使用

原创 2015年05月06日 15:56:39

字符串是python中常用到的数据类型,总结了如下部分常用到的对字符串的操作。
len(s)
返回字符串的长度

s[2]
通过索引获取字符串中的第3个字符

s[1:5]
返回第2个到第5个字符的子字符串。注意字符串切片前面是半区间,后面是开区间。并且索引是由0开始的

s[:5]
返回第1个到第5个字符的子字符串。如果中括号内省略写分号:前的值,则表示从第一个字符开始

s[1:]
返回第2个到最后一个字符的子字符串。如果中括号内省略写分号:后的值,则表示到最后一个字符为止

+
可连结2个字符串

in
如果字符串中包含给定的字符返回True

not in
如果字符串中不包含给定的字符返回True

s.find()
返回字符串开始的索引值,否则返回-1
相关方法:rfind,index,rindex,count,startwith,endwith

s.rfind()
返回字符串最后一次出现的位置,如果没有匹配项则返回-1

s.isdigit()
如果 s只包含数字则返回 True 否则返回 False.

s.lower()
转换 s中所有大写字符为小写.
相关方法:islower, capitalize, swapcase, title, istitle, upper, isupper

str()
转换成字符串

split()
它是join的逆方法,用来将字符串分割成序列。

>>> '1+2+3+4+5'.split('+')
['1','2','3','4','5']

>>> '/usr/bin/env'.split('/')
['','usr','bin','env']

strip
strip方法返回去除两侧(不包括内部)空格的字符串。

string.encode(encoding=’UTF-8’, errors=’strict’)
以 encoding 指定的编码格式编码 string,如果出错默认报一个ValueError 的异常,除非 errors 指定的是’ignore’或者’replace’

string.decode(encoding=’UTF-8’, errors=’strict’)
以 encoding 指定的编码格式解码 string,如果出错默认报一个 ValueError 的 异 常 , 除 非 errors 指 定 的 是 ‘ignore’ 或 者’replace’

示例:

#coding:utf8
import os

strDir = "D:\\临时共享"
strName = "brand-file-name-2.7.124.124-full.45bb09bdf44d7b117dc507ad2e33ckd8.exe"

strLen = len(strName) # 获得字符串的长度等于69
print "The length is " + str(strLen)     

print "strName[0]=" + strName[0]        # 输出第1个字符 'b'
print "strName[3]=" + strName[3]        # 输出第4个字符 'n'
print "strName[1:5]=" + strName[1:5]     # 输出第2-5个字符 ‘rand’
print "strName[:5]=" + strName[:5]       # 输出第0-5个字符 'brand'
print "strName[67:]=" + strName[66:]     # 输出第67-69个字符 'exe'

print strName[0] + strName[66:]           # 输出字符 'bexe'

if "exe" in strName:                     # 判断 'exe'是否在字符串中
    print "'exe' is in " + strName

fullIndex = strName.find("full")         # 获得子串‘full'所在的位置
print "The string before 'full' is " + strName[:fullIndex]   # 输出 'brand-file-name-2.7.124.124-'

exeIndex = strName.rfind(".")   # 获得最后一个'.'所在的位置         
print "The format is " + strName[exeIndex+1:]

# 获得字符串中第一个数字
print "The first Num is " + filter(str.isdigit,strName)[0]

#识别中文编码路径
strFileName =  os.path.join(strDir.decode('utf8').encode('cp936'),strName)
print strFileName

以上示例执行结果:

The length is 69
strName[0]=b
strName[3]=n
strName[1:5]=rand
strName[:5]=brand
strName[67:]=exe
bexe
'exe' is in brand-file-name-2.7.124.124-full.45bb09bdf44d7b117dc507ad2e33ckd8.exe
The string before 'full' is brand-file-name-2.7.124.124-
The format is exe
The first Num is 2
D:\��ʱ����\brand-file-name-2.7.124.124-full.45bb09bdf44d7b117dc507ad2e33ckd8.exe

在编译器下输出中文路径显示还是乱码,但是不影响使用,如os.listdir(strDir.decode(‘utf8’).encode(‘cp936’))还是可以识别到路径并列出文件夹下的文件名称的。

python字符串实际应用——总结(学习记录)

因为在python中字符串被定义为字符的有序集合
  • wangyezi19930928
  • wangyezi19930928
  • 2014年05月26日 11:20
  • 1373

理解python中的文档字符串

我们在使用def 关键字定义一个函数时,其后必须跟有函数名和包括形式参数的圆括号。函数体的下一行开始,必须是缩进的。函数体的第一行可以是字符串,这个字符串就是文档字符串(documentation s...
  • wgw335363240
  • wgw335363240
  • 2014年05月13日 15:43
  • 7204

python 字符串插入变量

字符串中插入变量 Python并没有对在字符串中简单替换变量值提供直接的支持。 但是通过使用字符串的 format() 方法来解决这个问题。比如: >>> s = '{name...
  • w2008145338
  • w2008145338
  • 2015年05月14日 21:15
  • 3073

python算法——字符串表达式的计算

preface:最近有个面试,被要求给出一个字符串表达式,计算出结果。本以为是见到过的,想着用一个栈,然后被面试官打断说你这样是有问题的,然后想了说用树,又被打断说是有问题的,再仔细想想。结果还是没整...
  • u010454729
  • u010454729
  • 2016年07月10日 18:43
  • 3742

python+处理日志+处理URL防止SQL注入

regexes = {"regex": {"regexesSqlInjection": [{"regex": "select.+(from|limit)", "remarks": "", "score...
  • u013554860
  • u013554860
  • 2017年01月07日 19:17
  • 366

Python中常用的字符串内建函数

1、string.capitalize()         把字符串的第一个字符大写。 >>> myString = "hello world, hello everyone!" >>> myS...
  • xc_tsao
  • xc_tsao
  • 2014年05月09日 23:59
  • 816

Python中字符串常见操作总结

Python中字符串常见操作总结:
  • u014745194
  • u014745194
  • 2017年04月13日 09:38
  • 630

3.14 Python文档字符串

Python有一个叫文档字符串(documentation strings)的好特性,通常用缩写名docstrings来指定。 文档字符串是你应该使用的一个重要工具,它对程序文档有助,令其容易理解...
  • softn
  • softn
  • 2016年07月01日 07:38
  • 243

python机器学习库的使用

常见机器学习算法名单 1.线性回归 线性回归通常用于根据连续变量估计实际数值(房价、呼叫次数、总销售额等)。我们通过拟合最佳直线来建立自变量和因变量的关系。这条最佳直线叫做回归线,并且用 Y= a...
  • Together_CZ
  • Together_CZ
  • 2016年11月29日 20:24
  • 1216

Python:如何将字符串作为变量名

版权声明:非技术文章禁止转载,如有需要请私信作者。技术类文章欢迎转载,转载请注明出处: http://blog.csdn.net/ztf312/ 一共三种方法: [...
  • qq_15013233
  • qq_15013233
  • 2016年08月30日 15:23
  • 3945
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Python字符串学习与使用
举报原因:
原因补充:

(最多只允许输入30个字)