python学习day03 int str bool 操作函数

一.数据类型

  1.  int    整型    bit_length()    返回整型数值的二进制长度

a = 15   #15的二进制码是1111,当然存储是以字节为单位的00001111,看电脑是32位还是64位在前补零
print(a.bit_length()) #  求的是有效长度,从第一个不为0开始数
#4

  2.    str

s="abcdefg"
s[2]  #索引
s[2:3] #切片
s.split(**) #切割,返回列表
s.count(**) #数数,返回个数
s.find(**) #返回索引
s.index(**) #返回索引
len(s) #返回字符串的长度,和print一样是Python的内置函数

*****以下是条件判断语句返回True或者False s.startswith(**) #判断字符串是否以**开头,返回True或者False s.endswith(**) #判断字符串是否以**结尾,返回True或者False s.isalnum() #判断字符串是否是字母和数字组成 s.isdigit() #判断字符串是否是纯阿拉伯数字 s.isalpha() #判断字符串是否是纯字母 s.isnumeric() #判断字符串是否是数字,包括一二三 个十百 壹贰这些 *****判断语句结束******** "abc{}".format() #格式化输出
*******字符串大小写字母的问题******
s.capitalize() #字符串首字母变为大写
s.title()  #所有单词(被特殊字符分割都认为是单词,中文也算特殊字符)首字母变为大写
s.upper()  #变为大写字母
s.lower()  #变为小写字母
s.swapcase()  #大小写互换
s.center(10,"*") #拉长成10, 把原字符串放中间.其余位置补*
s.expandtabs()
s.strip()  #去掉左右两端的空格
s.strip("*")  #去掉左右两端指定元素
s.replace("原字符","新字符","替换的个数")

  

#######索引
s="abcdefg1234567"
print(s[2])  #从0开始从左往右数,所以这里打印的是第三个字符"字"
#c
print(s[-1]) #-1表示的是倒数第一个
#7

######切片

print(s[1:4]) #输出索引位置为 1 2 3出的字符,注意这个[]只包括左边的数,顾头不顾尾
#bcd
print(s[1:4:2]) #2为步长,每两个输出一个,输出第一个
#bd
print(s[4:1:-1]) #要想从右往左输出,步长必须为负,即当s[第一个索引:第二个索引:步长],第一个索引对应字符串在第二个索引左边时,步长必须为正,默认是1,第一个索引对应的字符串在第二个索引的右边时,则步长必须为负
# edc
print(s[-1:-4:-2])
#75
print(s[1:])#从索引1处到最后
#bcdefg1234567
print(s[:-1])#从开始到倒数第二个,-1是最后一个,但是注意[]顾头不顾尾
#abcdefg123456
print(s[:])#原样输出
######切割     split
s="a_b_c_d_e"
li=s.split("_") #以下划线作为刀切割字符串,原字符串中所有下滑线的左右两侧变为两个字符串,并返回一个列表,即字符或者字符串如作为刀则一定能切,且至少切成两份
print(li)
#['a', 'b', 'c', 'd', 'e']
li=s.split("_",2) #第二个参数是切得个数,从左到右开始切,切两次就不切了
print(li)
#['a', 'b', 'c_d_e']
li=s.split("g") #字符串中没有刀,不能切,返回原字符串
print(li)
#['a_b_c_d_e']
#li=s.split("")  #这个刀为空,报错,
li=s.split("a")  #所谓一刀两断,a的左边认为是空字符
print(li)
#['', '_b_c_d_e']

 

s = """诗人
学者
感叹号
渣渣"""
print(s.split("\n")) # 用\n切割

  

 count 数数

s = "alex wusir taibai "
print(s.count("ai"))  #输出ai在s字符串中的个数
#2

      find  查找

扫描二维码关注公众号,回复: 1349388 查看本文章
s = "明天周末了.你们打算干什么去?"
print(s.find(""))  # 如果查找的内容不存在. 返回-1, 如果存在返回索引
#4
print(s.find(""))
#-1
s.find("a", 8, 22) # 切片找,从索引为8-21中找"a"的索引位置

    index 求索引

#index 求索引
s = "下周我们要考试了. 你们慌不慌"
print(s.index("们要"))
#3

  format  格式化输出

#格式化输出
print("我叫%s,今年%d岁" % ("perfey",24))
#我叫perfey,今年24岁
print("我叫{},今年{}岁".format("perfey",24))
#我叫perfey,今年24岁
print("我叫{1},今年{0}岁".format(24,"perfey"))  #可以指定参数的位置,不必按顺序对应了
#我叫perfey,今年24岁
print("我叫{name},今年{age}岁".format(name="perfey",age=24))  #通过有意义的名称作为参数进行对应
#我叫perfey,今年24岁

     3.    bool

           True       False

           认为字符串有内容为真,无内容为假.  即只有""字符串为假,其余的字符串均为真

           空字符串是False. 非空字符串是True

向系统中录入员工信息, 不停的录入 , 输入回车退出
while True:
    name = input("输入用户信息:")
    if not name:      当不输入信息即直接回车时,name为空,认为是False
        break
    else:
        print("新员工信息:"+name)

   for 迭代

for  变量  in  s  #把s中的元素逐个的放到变量中
    代码块

  4.    list    []  列表

  5.    tupe  ()  元组,只读列表,不能更改

  6.   dict   {}     字典,查找比较快. key:value, 一次存两个数据. 一对一对的存

       7.     set  {}     集合,一次存一个. 不能重复. 只存key, 比较少见

猜你喜欢

转载自www.cnblogs.com/perfey/p/9123277.html