Python 字符串

1.字符串的定义

双引号或者单引号中的数据,就是字符串。

‘’‘内容‘’‘:使用三个单引号可保持原内容的格式。

2.字符串的下标

字符串:name = 'abcdef',在内存中的实际存储和列表一样。

可通过下标得到。

#!/usr/bin/python

var1 = 'Hello World!'
var2 = "Python Runoob"

print "var1[0]: ", var1[0]
print "var2[1:5]: ", var2[1:5]
var1[0]:H
var2[1:5]:ytho

3.字符串格式化

name = '老王'
age = 20
info = '名字=%s,年龄=%s,16进制=%x'%(name,age,age)
print(info)
name="code" class="python">名字=老王,年龄=20,16进制=14


4.字符串运算符

下表实例变量 a 值为字符串 "Hello",b 变量值为 "Python":

操作符描述实例
+字符串连接
>>> a + b ' HelloPython '
*重复输出字符串
>>> a * 2 ' HelloHello '
[]通过索引获取字符串中字符
>>> a [ 1 ] ' e '
[ : ]截取字符串中的一部分
>>> a [ 1 : 4 ] ' ell '
in成员运算符 - 如果字符串中包含给定的字符返回 True
>>> " H " in a True
not in成员运算符 - 如果字符串中不包含给定的字符返回 True
>>> " M " not in a True
r/R原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。原始字符串除在字符串的第一个引号前加上字母"r"(可以大小写)以外,与普通字符串有着几乎完全相同的语法。
>>> print r ' \n ' \ n >>> print R ' \n ' \ n
%格式字符串

5.方法

1.查找:

    string。find(str, beg=0, end=len(string)):检测 str 是否包含在 string 中,如果 beg 和 end 指定范围,则检查是否包含在指定范围内,如果是返回开始的索引 值,否则返回-1

    string.rfind(str, beg=0, end=len(string)):类似于 find()函数,不过是从右边开始查找

    string.index(str, beg=0, end=len(string)) :类似于 find()函数,但是找不到报异常.

    string.rindex(str, beg=0, end=len(string)):类似于 rfind()函数,但是找不到报异常.

2.统计:

    string.count(str, beg=0, end=len(string)):检测 str 是否包含在 string 中出现的次数,如果 beg 和 end 指定范围,则检查是否包含在指定范围内

3.分隔:

   string.split(str='',num)  : 以 str 为分隔符切片 string,如果 num有指定值,则仅分隔 num 个子字符串   string.splitlines([keepends]) : 按照行('\r', '\r\n', \n')分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符。

string.partition(str) : 有点像 find()和 split()的结合体,从 str 出现的第一个位置起,把 字 符 串 string 分 成 一 个 3 元 素 的 元 (string_pre_str,str,string_post_str),

如果 string 中不包含str 则 string_pre_str == string.

string.rpartition(str) : 类似于 partition()函数,不过是从右边开始.

4.判断:

string.startswith(obj=0,end=len(string)) : 检查字符串是否是以 obj 开头,是则返回 True,否则返回 False。如果beg 和 end 指定值,则在指定范围内检查.string.endswith(obj=0,end=len(string)) :  检查字符串是否是以 obj 结尾,是则返回 True,否则返回 False。如果beg 和 end 指定值,则在指定范围内检查.

string.isalnum() : 字符串都是字母或数字则返回 True,否则返回 False,也包括汉字

string.isalpha() :   所有字符都是字母包括汉字则返回 True,否则返回 False

string.isdigit() :      所有字符都是数字则返回 True,否则返回 False

string.isupper() :   所有字符都是大写则返回 True,否则返回 False

string.islower() :   所有字符都是小写则返回 True,否则返回 False

string.isspace() : 只包含空格则返回 True,否则返回 False5.大小写

string.capitalize() : 把字符串的第一个字符大写string.lower() :       转换 string 中的小写字母为大写

string.upper():       转换 string 中的小写字母为大写

6.对齐

string.ljust(width): 返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串

string.rjust(width): 返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串

string.center(width):返回一个原字符串居中,并使用空格填充至长度 width 的新字符串

7.裁剪

string.scrip([obj]):删除 string 字符串前后的的obj,如果不传参数,删除前后空格string.lstrip([obj]):删除 string 字符串左面的obj,如果不传参数,删除左面空格

string.rstrip([obj]):删除 string 字符串右面的obj,如果不传参数,删除右面空格

8.合并

string.join(seq):以 string 作为分隔符,将 seq 中所有的元素(字符串表示)合并为一个新的字符串

9.编码和解码

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

bytes.decode(encoding='UTF-8', errors='strict'):解码


                
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值