python 数字以及字符串(方法总结,有的可能理解错误)

数字类型(int):

在python 2中,数字类型可以分为整形,长整形,浮点型,以及复数。在python3中都是整形和长整形都称之为整形,且python3中没有限制。

1.int方法使用,用于转换字符类型为数字类型(注意被转换的数据类型必须是数字)
a = '1234'      #这里a是一个字符串,验证如下,可以用type(a)可显示出来
print(type(a))
print(a)
u = int(a)      #这里u是一个数字类型的,这里的话是讲字符串类型转换为数字类型
print(type(u))
print(u)
2.bit_length(self)方法使用,这里我理解的是看这些数字或者字符串要至少占用多少的位数
num = 12
print(num.bit_length())
执行结果:
4

字符串(str):

1.capitalize  方法使用,作用是将首字母变大写:

Name = "yangxiufeng "
S = Name.capitalize()
print(S)
执行如下: Yangxiufeng

2.casefold 方法使用,作用是将字符串里的字母变成小写:

Name = "YANGXIUFENG"
S = Name.casefold()
print(S)
执行如下: yangxiufeng

3.center 方法使用:(内容居中,width:总长度;fillchar:空白处填充内容,默认无)还有ljust  ,rjust   指定左右边填充字符

Name = "YANGXIUFENG"        
S = Name.center(20,"=")     #可以指定两边的字符长度,切字符只能是一位      
S1 = Name.center(20)        #默认是将字符串放到指定长度的中心
print(S)
print(S1)
执行如下:
====YANGXIUFENG===== YANGXIUFENG

4.count 方法的使用:(子序列的个数)

name = "xiaooomimming"
S = name.count('o')     #count参数可以查看某个字符或者字符组合在字符串里出现的次数
S1 = name.count("o",4)  #也可以用start 和end 限定未知进行范围查看出现的次数
print(S)
print(S1)
执行如下:
3 2

 

5.encode 方法的使用:

待续

6.endswith 方法的使用:

name = "xiaooomimming"
S = name.endswith('g')      #用来确认字符串最后结尾是不是自己执行的,如果是的话将会提示True,否则是False
S1 = name.endswith('g',1,4) #用来指定范围,看范围内的字符是不是以自己指定的字符结尾,布尔值表示是与否
print(S)
print(S1)
执行如下: True False

7.expandtabs 方法的使用: 将字符串中的table替换成指定的空格数,从前往后数限定的数字为一组遇到"\t" 如果不足会以空格补全

name = "xiaooo\tmimming"
S=name.expandtabs(tabsize=8)    
print(S)
print(name)
执行如下: xiaooo mimming xiaooo mimming
实例:
A = "name\tmail\tphonenameber\nyangxiufeng\t87987889@qq.com\t123456\nyangxiufeng\t87987889@qq.com\t123456\n"
print(A.expandtabs(30))
结果如下:
name                          mail                          phonenameber
yangxiufeng 87987889@qq.com 123456
yangxiufeng 87987889@qq.com 123456


7.find 方法的使用:(寻找子序列的位置,没找到的话返回 -1)

name = "xiaooomimming"
S = name.find('m')      #查找字符串里是否有自己想要的字符如果有会显示字符的下标,没有的话会显示 -1表示,也可以指定范围
S1 = name.find('m',11,20)
print(S)
print(S1)
执行如下:
6 -1

8.format 方法的使用:字符串格式化,动态参数

A = '{name} is {age} years old'
S= A.format(name = 'yangxiufeng',age= 18)   #指定格式书写方式用{}表示,也可以用下列的方法表示,默认传参
B = '{} is {} years old'
S1 = B.format('XIUFENG',45)                 #这里我们是按位置对应起来,一个字符一个坑,跟填空题差不多,只不过是按顺序而已了
print(S)
print(S1)

执行如下:
yangxiufeng is 18 years old
XIUFENG is 45 years old

9.format_map 方法的使用:

A = '{name} is {age} years old'
S= A.format_map({'name':'yangxiufeng','age':'18'})   #此方法和format差不多,书写格式是这样的
print(S)

执行如下:
yangxiufeng is 18 years old

10.index 方法的使用:子序列位置,如果没找到,报错

A = 'yangxiufeng'
B = A.index('u')    #查找指定字符的下标
C = A.index('t')    #查找不存在字符串里的字符时会报错,这个的话是没有find方法好用,报错会给(-1)
print(B)
print(C)

执行如下:
6
Traceback (most recent call last):
  File "E:/new/文件io/Nine.py", line 5, in <module>
    C = A.index('t')    #查找不存在字符串里的字符时会报错,这个的话是没有find方法好用,报错会给(-1)
ValueError: substring not found

11. isalnum 方法的使用:是否是字母和数字,如果有其他的符号会出现False

A = 'yangxiufeng-*'
B = 'yangxiufeng23432'
print(A.isalnum())
print(B.isalnum())

执行如下:
False
True

12.isalpha 方法是否是字母  也是布尔值提示

A = 'yangxiufeng'
B = 'yangxiufeng1'
print(A.isalpha())
print(B.isalpha())

执行如下:
True
False

 

13. isdecimal ,isdigit,isnumeric 方法:是否为数字(3个方法都可以用来判断是否为普通的十进制数字,isdigit 方法可以判断特殊的数字以及十进制数字,isnumeric功能强大也可以额外判断中文的数字)

test = "223"        #纯数字判断
v1 = test.isdecimal()
v2 = test.isdigit()
v3 = test.isnumeric()
print(v1,v2,v3)

执行结果:
True True True
test = "223②"        #特殊数字判断
v1 = test.isdecimal()
v2 = test.isdigit()
v3 = test.isnumeric()
print(v1,v2,v3)

执行结果:
False True True
test = "223②二"        #加中文字符判断
v1 = test.isdecimal()
v2 = test.isdigit()
v3 = test.isnumeric()
print(v1,v2,v3)

执行结果:
False False True


 

 

 

 

 

 

 

 

 

 


 

posted on 2018-11-13 00:42  杨秀峰blog  阅读(369)  评论(0编辑  收藏  举报

导航