玩命加载中...

掌握Python中的字符串

10个小节,预计用时45分钟。掌握Python的字符串。

字符串和list有很多相似的操作。若你对python中的list不够熟悉的话,建议先从掌握Python中的list开始。

请打开您的电脑,按照步骤一步步完成。

本教程基于Python 2.7

原创者:batmanX   |   编辑校对:SofaSofa TeamC   |   谢绝转载,违者侵权。


0. 环境设置

#!/usr/bin/env python
# -*- coding: utf-8 -*-
print "欢迎加入SofaSofa数据科学社区!"

1. 定义字符串

在python中字符串类型是str。我们一般用单引号''或者双引号""来定义、赋值字符串变量。单引号和双引号通常没有区别。

#定义字符串
str_1 = 'SofaSofa'
str_2 = "SofaSofa"
str_3 = 'Python is good!'
print str_1
print str_2
print str_3

#下面这行代码验证了单引号与双引号在这个例子中是没有区别的。
print str_1 == str_2

#定义一个空字符
str_4 = ''

#注意:空字符不等同于空格字符
str_5 = ''
str_6 = ' '
str_7 = '  '
print str_5 == str_6
print str_6 == str_7

type函数返回变量的类型。这里字符串的变量类型为str

str_1 = 'sofasofa'
print type(str_1)

我们知道len函数可以返回list的长度,len函数也可以返回字符串的字符个数。

str_1 = 'sofasofa'
str_2 = 'Hello SofaSofa!'
print len(str_1)
print len(str_2)

#对于中文字符来说,每个汉字(包括中文标点)的长度为3。试试下面的例子
print len("你好")
print len("你好!")

2. 字符与数值的转换

我们可以通过函数int()float()将字符变量转换为数值变量。

#对于疑似小数的字符串(含有小数点),我们用float函数将其转换为浮点型数值。
pi = '3.14'
print type(pi)
pi = float(pi)
print type(pi), pi

#对于疑似整数的字符串(不含有小数点),我们用int函数将其转换为整数型数值。
pi = '3'
print type(pi)
pi = int(pi)
print type(pi), pi

#转换为数值之后我们就可以进行正常的数值运算了。
pi = '3.14'
pi = float(pi)
print pi ** 2

我们也可以通过函数str()将数值变量转换为字符变量。

num_1 = 2
num_2 = 3
result = str(num_1 + num_2)
print type(result), result

3. 读取字符串中的字符

读取字符串中的字符与读取list中的元素的操作是一样的。

my_str = 'Hello SofaSofa!'
# 读取my_str中的第一个字符
a = my_str[0]
# 读取my_list中的第三个元素
b = my_str[2]

也可以反向读取字符串中的字符。

# 读取my_str中的最后一个字符
c = my_str[-1]
print c
# 读取my_str中的倒数第二个字符
d = my_str[-2]
print d

我们可以用:读取string中的多个字符。基本用法与list相同。

my_str = 'Hello SofaSofa!'
# 从左向右输出前7个字符
print my_str[:7]
# 从右往左输出后4个元素
print my_str[-4:]

上面是读取连续的字符,也可以读取非连续的字符。基本用法与list相同。

my_str = 'Hello SofaSofa!'
# 输出第2,4,6,8个字符
a = my_str[1:8:2]
print a

利用:-1,我们可以将整个字符串取逆。

my_str = 'Hello SofaSofa!'
a = my_str[::-1]
print a
#试试看下面返回什么呢?
a = my_str[::-2]
print a