• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

MenAngel

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

Python学习进程(8)字符串內建函数

    Python字符串內建函数实现了string模块的大部分方法,并包括了对Unicode编码方式的支持。

 

    (1)capitalize():

    将字符串的第一个字母变成大写,其他字母变小写。对于 8 位字节编码需要根据本地环境。

>>> str='I AM MenAngel!'+'I am Student!'
>>> print(str)      
I AM MenAngel!I am Student!
>>> str.capitalize()
'I am menangel!i am student!'

 

    (2)center(width):

    返回一个原字符串居中,并使用空格填充至长度 width 的新字符串。默认填充字符为空格。

>>> str='title:Python and Big data!'
>>> str
'title:Python and Big dat!'
>>> str.center(40)
'       title:Python and Big dat!        '
>>> 

 

    (3)count(sub, start= 0,end=len(string)):

    用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。

>>> str='xiaoming and MenAngel and xiaohua'
>>> str.count('and',10,20)
0
>>> str.count('and',0,len(str))
2

 

    (4)encode(encoding='UTF-8',errors='strict'):

    以 encoding 指定的编码格式编码字符串。默认编码为字符串编码。该方法返回编码后的字符串。

    参数:

encoding -- 要使用的编码,如"UTF-8"。
errors -- 设置不同错误的处理方案。默认为 'strict',意为编码错误引起一个UnicodeError。 其他可能得值有 'ignore', 'replace', 'xmlcharrefreplace', 'backslashreplace' 以及通过 codecs.register_error() 注册的任何值。

    实例:

>>> str='This is a string example!'
>>> str=str.encode('utf-8','strict')
>>> print(str)
b'This is a string example!'

    encode解码用字符串编码方式的字符串,返回bytes类型。并且不能再次被解码:

 str=str.encode('base','strict')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'bytes' object has no attribute 'encode'

 

    (5)deconde():

    以 encoding 指定的编码格式解码字符串。默认编码为字符串编码。

    参数与(4)类似:

>>> str='This is a string example!'
>>> str=str.encode('utf-8','strict')
>>> print(str)
b'This is a string example!'
>>> str=str.decode('utf-8','strict')
>>> print(str)
This is a string example!
>>> str
'This is a string example!'

 

    (6)endswith(suffix[, start[, end]]):

    endswith() 方法用于判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回True,否则返回False。可选参数"start"与"end"为检索字符串的开始与结束位置。

    参数:

suffix -- 该参数可以是一个字符串或者是一个元素。
start  -- 字符串中的开始位置。
end    -- 字符中结束位置。

    如果字符串含有指定的后缀返回True,否则返回False。

>>> str='上海自来水来自哪里啊?上海!'
>>> suffix='上海'
>>> str.endwith(suffix,0,length(str)-1)
>>> str.endswith(suffix,0,len(str)-1)
False
>>> str.endswith(suffix,0,2)
True
>>> str[0:len(str)-1]
'上海自来水来自哪里啊?上'
>>> str
'上海自来水来自哪里啊?上海'
#结论:叹号不再字符串里

 

    (7)expandtabs(tabsize=4):

    把字符串中的 tab 符号('\t')转为空格,tab 符号('\t')默认的空格数是 4。该方法返回字符串中的 tab 符号('\t')转为空格后生成的新字符串。

>>> print(str)
你好啊    MenAngel
>>> print(str.expandtabs(10))
你好啊       MenAngel
>>> print(str.expandtabs(0))
你好啊MenAngel
>>> print(str)   #str并未改变,此函数创建了一个副本
你好啊    MenAngel

 

    (8)find(str, beg=0, end=len(string)):

    检测字符串中是否包含子字符串 str ,如果指定 beg(开始)和 end(结束)范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。

>>> str='loyalty is the foundation on which the night\'s wath was built'
>>> str
"loyalty is the foundation on which the night's wath was built"
>>> print(str.find('is',5))
8
>>> print(str.find('xiaoming',0,len(str)-5))
-1

   

    (9)find(str, beg=0, end=len(string))

    检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。

    参数:

str -- 指定检索的字符串
beg -- 开始索引,默认为0。
end -- 结束索引,默认为字符串的长度。

    实例:(find与index的区别)

>>> str
"loyalty is the foundation on which the night's wath was built"
>>> str.index('is')      
8
>>> str.index('Men')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: substring not found
>>> str.find('Men')
-1

 

posted on 2016-07-21 12:08  MenAngel  阅读(322)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3