Python字符串特性及常用字符串方法的简单笔记

yipeiwu_com5年前Python基础

单引号和双引号都能表示字符串。区别在于转义的时候。

如果懒得加转义字符,可以通过在字符串前面加上r。例如:

print r'C:\some\name'

通过在字符串里面添加反斜杠来不换行。

print """\
  Usage: thingy [OPTIONS]
  -h      Display this usage message
   -H hostname    Hostname to connect to
   """

字符串通过加号来连接,并可以通过乘号来翻倍。
字符串也可以通过写在一起来连接,但是不能用在变量上面:

'Py' 'thon'

字符串可以像数组一样访问,0代表开始字符。特别的是,-1代表最后一个字符,-2表示倒数第2个字符,依次得到结果。

字符串可以切片访问。比较特别的是使用负数来切片。

s="abcde"
s[0]
s[-1]
s[-5]
s[:-1] #去掉最后一个字符,比如换行符
+---+---+---+---+---+---+

| P | y | t | h | o | n |

+---+---+---+---+---+---+

0 1 2 3 4 5 6

-6 -5 -4 -3 -2 -1

切片访问越界会得到一个空集。无需做访问控制。

对于单个字符时无法赋值的,因为字符串是不可变的。如果需要一个不同的字符串,那就creat一个新的字符串吧,使用切片能够很容易达到这点。
内置函数len返回字符串的长度。

用encode和decode来问字符串编码解码。(关于编码类型的问题,需要专门开一个文件来讨论)

常用方法:
startswith 检测开头
示例:

1. a = 'leonis'
if a.startswith('le'):
print ‘le'
endswith 检测结尾
示例:

1. a = ‘leonis'
if a.endswith(‘is'):
print ‘is'

in 检测是否为其中一部分
示例:

1. a = ‘leonis'
if ‘o' in a:
print ‘a'

find 查询包含
示例:

1. a= ‘leonis'
if a.find(‘on') != -1:
print(‘on')

join 连接字符串
示例:

1.

 a = ' '
mylist = ['Brazil','Russia','India','China'] print a.join(mylist)

2.

mylist = ['Brazil','Russia','India','China']
print ‘_'.join(mylist)

split 拆分字符串

1.

 b = 'my..name..is..leonis'
print b
print b.split('..')

2.

b = ‘my..name..is..leonis'
print b
print b.split(‘..',1)

相关文章

python读取文本绘制动态速度曲线

python读取文本绘制动态速度曲线

本文实例为大家分享了python读取文本绘制动态速度曲线的具体代码,供大家参考,具体内容如下 由于需要分析机械加工过程中各个轴的速度,于是用软件导出了数据,写了这个python脚本来显示...

python实现证件照换底功能

本来是在找交通识别的程序,然后凑巧看见了证件照换底,于是学习了一下~一开始在网上找了一个很普遍写的程序,但是效果并不好,想要放弃了,然后看见了这个,参考:python opencv实现证...

Python脚本暴力破解栅栏密码

今天遇到一个要破解的栅栏密码,先给大家介绍通用的脚本。 方法一(通用脚本): #!/usr/bin/env python # -*- coding: gbk -*- # -*-...

python3.5 cv2 获取视频特定帧生成jpg图片

python3.5 cv2 获取视频特定帧生成jpg图片

假如文件夹有大量视频文件,需求目标是想从每个视频中提取一帧作为视频的一个封面图片,本文利用opencv-python模块实现需求。结合自己的工作,做一下简单的记录,原本想生成可传参数的e...

Python利用神经网络解决非线性回归问题实例详解

Python利用神经网络解决非线性回归问题实例详解

本文实例讲述了Python利用神经网络解决非线性回归问题。分享给大家供大家参考,具体如下: 问题描述 现在我们通常使用神经网络进行分类,但是有时我们也会进行回归分析。 如本文的问题: 我...