Python 06

内建函数
标准类型函数
>>> str1='abc'
>>> str2='def'
>>> str3='hij'
>>> len(str1)  #返回字符串的字符数
3
>>> max(str1)  #返回最大或最小的字符,按照ASCII码值排列
'c'
>>> min(str1)
'a'
>>> for i,t in enumerate(str1):
...   print(i,t)
...
0 a
1 b
2 c
字符串类型函数
>>> value=input("Enter a number:")  # 使用给定字符串提示用户输入并将输入返回
Enter a number:123
>>> value
'123'
>>> chr(65) #以一个范围在range(256)内的整数做参数,返回一个对应的字符
'A'
>>> ord('A') #chr的配对函数
65
字符串内建函数
方法描述
string.capitalize()把字符串的第一个字符大写
string.center(width)返回一个原字符串居中,并使用空格填充至长度width的新字符串
string.count(str,beg=0,end=len(string))返回str在string里面出现的次数,如果beg或者end指定则返回指定范围内str出现的次数
string.decode(encoding=’UTF-8’,errors=’strict’)以encoding指定的编码格式解码string,如果出错默认报一个ValueError的异常,除非errors指定的是‘ignore’或者‘replace’
string.encode(encoding=’UTF-8’,errors=’strict’)以encoding指定的编码格式编码string,如果出错默认报一个ValueError的异常,除非errors指定的是‘ignore’或者‘replace’
string.endswith(obj,beg=0,end=len(string))检查字符串是否以obj结束,如果beg或者end指定则检查指定的范围内是否以obj结束,如果是,返回True,否则返回False
string.expandtabs(tabsize=8)把字符串string中的tab符号转为空格,默认的空格数tabsize是8
string.find(str,beg=0,end=len(string))检查str是否包含在string中,如果beg和end指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回-1
string.index(str,beg=0,end=len(string))跟find方法一样,不过如果str不在string中会报一个异常
string.isalnum()R如果string至少有一个字符并且所有字符都是字母或者数字则返回True,否则返回False
string.isalpha()如果string至少有一个字符并且所有字符都是字母则返回True,否则返回False
string.isdecimal()如果string只包含十进制数字则返回True否则返回False
string.isdigit()如果string值包含数字则返回True否则返回False
string.islower()如果string中包含至少一个区分大小写的字符,并且所有这些字符都是小写,则返回True,否则返回False
string.isnumeric()如果string中只包含数字字符,则返回True,否则返回False
string.isspace()如果string中只包含空格,则返回True,否则返回False
string.istitle()如果string是标题化的则返回True,否则返回False
string.isupper()如果string中包含至少一个区分大小写的字符,并且所有这些字符否是大写,则返回True,否则返回False
string.join(seq)Merges(concatenates)以string作为分隔符,将seq中所有的元素合并为一个新的字符串
string.ljust(width)返回一个原字符串左对齐,并使用空格填充至长度width的新字符串
string.lower()转换string中所有大写字符为小写
string.lstrip()截掉string左边的空格
string.partition(str)有点像find和split的结合体,从str出现的第一个位置起,把字符串string分成一个3元素的元祖(string_pre_str,str,string_post_str),如果string中不包含str则string_pre_str==string
string.replace(str1,str2,numb=string.count(str1))把string中的str1替换成str2,如果num指定,则替换不超过num次
string.rfind(str,beg=0,end=len(string))类似于find函数,不过是从右边开始查找
string.rindex(str,beg=0,end=len(string))类似index,不过是从右边开始
string.rjust(width)返回一个原字符串右对齐,并使用空格填充至长度width的新字符串
string.rpartition(str)类似于partition()函数,不过是从右边开始查找
string.rstrip()删除string字符串末尾的空格
string.split(str=”“,num=string.count(str))以str为分隔符切片string,如果num有指定值,则仅分隔num个子字符串
string.splitlines(num=string.count(‘\n’))按照行分隔,返回一个包含各行作为元素的列表,如果num指定则仅切片num个行
string.startswitch(obj,beg=0,end=len(string))检查字符串是否以obj开头,是则分那会True,否则返回False,如果beg和end指定值,则在指定范围内检查
string.strip([obj])在string上执行lstrip()和rstrip()
string.swapcase()翻转string中的大小写
string.title()返回“标题化”的string,就是所有单词都是以大写开始,其余字幕均为小写
string.translate(str,del=”“)根据str给出的表转换string的字符,要过滤掉的字符放到del参数中
string.upper()转换string中的小写字母为大写
string.zfill(width)返回长度为width的字符串,员字符串string右对齐,前面填充0
>>> str='hello world!'
>>> str.capitalize()
'Hello world!'
>>> str.center(20)
'    hello world!    '
>>> str.count('or')
1
>>> str.endswith('d!')
True
>>> str.endswith('ld')
False
>>> str.find('or',3)
7
>>> str.find('or',30)
-1
>>> str.index('or',30)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: substring not found
>>> str.index('or',3)
7
>>> ":".join(str.split())
'hello:world!'
>>> str.replace('world','everyone')
'hello everyone!'
>>> str.upper()
'HELLO WORLD!'
字符串的独特特性
三引号

若需要包含诸如换行符这样的特殊字符时,就需要使用三引号,它允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符,三引号的语法是一对连续的单引号或者双引号,典型用例是当需要一块HTML或者SQL时,这时用字符串组合,特殊字符串转义将会非常的繁琐。

>>> html='''<HTML><HEAD><TITLE> Python Test </TITLE></HEAD>
... <BODY><H3>RESULT</H3></BODY></HTML>'''
>>> cursor.execute('''CREATE TABLE users(login VARCHAR(8),uid INTEGER)''')
Unicode

unicode字符串操作举例:

#/user/bin/env python
'''
An example of reading and writing Unicode strings:Writes a unicode string to a file in utf-8 and reads itback in
'''
CODEC='utf-8'
FILE='unicode.txt'
hello_out=u"Hello World"
bytes_out=hello_out.encode(CODEC)
f=open(FILE,'wb')
f.write(bytes_out)
f.close()
f=open(FILE,"rb")
bytes_in=f.read()
f.close()
hello_in=bytes_in.decode(CODEC)
print(hello_in)

常用函数:

>>> tmp=['test','a','is','this']
>>> tmp
['test', 'a', 'is', 'this']
>>> max(tmp)  #取最大值
'this'
>>> min(tmp) #取最小值
'a'
>>> for i in reversed(tmp): #反转数值
...   print(i)
...
this
is
a
test
>>> sorted(tmp)    #字典序,按ASCII码来排序
['a', 'is', 'test', 'this']
>>> a=[3,6,9]   
>>>> sum(a) #求和
18
>>> sum(a,2)
20
>>> aList=['as','de',1]
>>> aTuple=tuple(aList)   #转换成元祖
>>> aList,aTuple
(['as', 'de', 1], ('as', 'de', 1))
>>> aList==aTuple
False
>>> another=list(aTuple) #转换成列表
>>> aList==another
True
>>> aList is another  #两个不同的对象
False
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值