zoukankan      html  css  js  c++  java
  • 初识数据类型

    整型  int

    int 1 2 3   主要是用于计算

    下面是求一个数字,占多少位  (.bit_length前面不能放存数字)

    i = 4
    print(i.bit_length())

    结果:

    二  

    字符串 str

    1,存储少量的数据,便于操作.字符串有顺序能进行索引和切片,并且索引是从0开始的.

    s= 'alex'

    s = 'alex'
    s1 = s[0]
    print(s1,type(s1))

    结果

    2.字符串切片有个顾首不顾尾原则

    s = 'alex'
    s1 = s[0:2]
    print(s1)

    结果

    3.索引还可以跳着索引,这个间隔我们叫步长,可以有正向步长和反向步长.  基本格式  : [起始索引:终止索引:步长]

    如果要反向取步长,索引方向也一定是反的

    s = 'alex taibai wusir '
    #[起始索引:终止索引:步长]
    s1 = s[0:3:2]
    print(s1)
    #倒叙取
    s2 = s[-1:-6:-2]
    print(s2)

    结果;

    4.字符串常用方法

    首字母大写  :   .capitalize()首字母大写,其他字母小写

    s =  'alex wuSir'
    # capitalize()首字母大写,其他字母小写
    print(s.capitalize())

    结果:

     大小写反转: 即大写变小写,小写变大写  .swapcase()大小写反转

    s =  'alex wuSir'
    # *swapcase()大小写反转
    print(s.swapcase())

    结果:

       .title()   非字母隔开的部分,首字母大写,其他小写  (空格,数字,特殊符号后分割的首字母大写,其他变为小写) 

    s =  'alex wuSir1taiBBai*riTian'
    print(s.title())

    结果:

    .upper全部大写和  .lower全部小写 一般应用于验证码的输入

    s =  'alexaw125uSir'
    s1=s.upper()  #全部大写
    s2=s1.lower()  #全部小写
    print(s1,s2)

    结果:

     .center()  以什么居中,填充物默认为空,如果填充距离小于自身长度 则不变,大于长度时居中,可以在长度后面加个填充物
    s="alex taibai"
    print(s.center(8))
    print(s.center(20,'*'))#填充物为*

    结果:

      .expandtabs()  有 时自动补位功能,补8的倍数位 

    s =  'al	ex wuSir'
    print(s.expandtabs())

    结果:

    通过元素找索引 两种方法 ,找到的是元素下标. 推荐用.find方法 

    如果有相同元素会输出第一个元素的索引,如果元素是个整体找索引也是输出找到的第一个元素的索引

    index()通过元素找索引,可以整体找,可以切片,找不到会报错

    find()通过元素找索引,可以整体找,可以切片,找不到返回-1

    s =  'al	ex wuSir'
    # # ***find()通过元素找索引,可以整体找,可以切片,找不到返回-1
    # # index()通过元素找索引,可以整体找,可以切片,找不到会报错
    print(s.find('L'))
    print(s.index('L'))

    结果:

      .strip 去除字符串前后两端的空格,换行符,tab键等(还可以去除数据)

    s =  '	alex wusir
    '
    #.strip 去除字符串前后两端的空格,换行符,tab键等
    print(s.strip())
    print(s.lstrip())
    print(s.rstrip())

    结果:

    用.strip去除数据

    s1 = 'alalelllllllxwusirbl'
    s= s1.strip("al")#前后有"a"或者"l"都取出,但是遇到不能去除的元素的会停止
    print(s)

    结果:

    判断首字母是不是哪个元素.startswith()  还可以切片判断.startswith("*",5,9)

    s =  'alex wusir'
    print(s.startswith('a'))
    print(s.startswith('al'))#将"al"看作一个整体判断
    print(s.startswith('w',2,8))#从位置2到8判断
    print(s.startswith('W',5))#从位置5判断

    结果

    将字符串转换成列表 .split()方法,括号中不加任何东西,表示以空格作为分割点,作为分割点的元素会消失,如果在开头或结尾则会出现空字符,还可以自已选择分割几处,默认是都分割.

    # splitstr --->list方法
    s = 'alex;wusir;ritian'
    s2 = 'alex wusir ritian'
    s1 = 'alexalaria'
    print(s.split(';'))
    print(s2.split())#默认用空格做分割点
    print(s1.split('a',1))#只分割一处

    结果:

     

    替换元素用.replace()方法, 括号中前面加老元素 后面加要替换的元素,然后还可以添加要替换的个数,默认是都替换

    s1 = '姐弟俩一起来老男孩老男孩老男孩'
    s2 = s1.replace('','',1)#老元素'老"新元素"小" 替换个数1
    print(s2)

    结果:

     

    判断字符串组成;输出布尔值

    name='jinxin123'
    print(name.isalnum()) #字符串由字母或数字组成
    print(name.isalpha()) #字符串只由字母组成
    print(name.isdigit()) #字符串只由数字组成

    结果:

    字符串的格式化.format的三种方法

    #第一种
    s = '我叫{},今年{},身高{}'.format('金鑫',21,175)#顺序不可变
    print(s)
    # 第二种
    s = '我叫{0},今年{1},身高{2},我依然叫{0}'.format('金鑫',21,175)#顺序不可变
    print(s)
    # 第三种
    s = '我叫{name},今年{age},身高{high}'.format(name = '金鑫',high=175,age=21)#顺序可变
    print(s)

     结果:

    s = ' ' #只能是以至少一个空格组成的字符串(全空格) 只要出现非空格就是False
    s.isspace()
    s = ' ' #只能是以至少一个空格组成的字符串(全空格)
    s1 ="       "
    s2 = "ac v    "
    print(s.isspace())
    print(s1.isspace())
    print(s2.isspace())

    结果:

     3  .fromkeys() 将一个可迭代对象做key,后面加的value,value的内存地址相同

     如果 values是个可更改类型,那么改变一个其他都会更改

    不可变的数据类型:可哈希

    
    
    dic = dict.fromkeys('abc','alex')
    print(dic)
    dic1 = dict.fromkeys([1,2,3],[])
    print(dic1)
    dic1[1].append('alex')
    print(dic1)
    dic["a"].replace("a","E")
    print(dic)
    dic3=dic["a"].upper()
    print(dic)
    
    

    结果:

     

    字符串长度  len()

    查元素个数  .count

    s =  'alexaaaaa wusir'
    print(s.count('a'))#查元素"a"的个数
    s = 'alex'
    print(len(s))#字符串a的长度

    结果:

    三 

    布尔型 bool 

    等于False的情况有 : 0 ,"" 空字符串,None,[]空列表,{}空字典,()空元祖 

    用于判断,一般判断时输出  就有两种状态 True False

     判断

    print(2>1)
    print(1>2)

     结果:

    元祖 tupe  用()包起来的,也被称作只读列表.a =(1,"wz",[1,2],{1},bool)  里面的数据可以是任何类型.

    五 

    列表 list  用[]包起来,能承载大量数据.和元祖一样 里面的数据也可以是任何类型,并且里面的元素可以被更改.

    六 

    字典  dict

    {'name':'alex',
    'age':54,
    'python10':[化工哥,小白,小黑,萌哥,,花哥,娶哥,阎王]
    }
    1,可存储大量数据,
    2,关联型数据.
    3,查找数据非常快.}

    set集合 能包含大量数据.但是不太常用

    八 类型转换补充

    int ----> str  str(int)  数字变字符串只需要在外面用str()就行
    str ----> int int(str) 只能是数字组成的字符串才能进行转换

    int ----> bool 零 Fasle 非零 True 数字转换成布尔值,零是True,其他的是False
    bool ----> True T ---> 1 F --->0 布尔值转换成数字True是1,False是0

    str ---> bool 非空 True 空就是False 字符串转换布尔值,只要不为空就都是True,只有空字符串是False
    bool ----> str str(True) str(False) 布尔值转换成字符串就只是在Ture,和False上加个"",

     九

    for循环  基本格式 for i in a: 输出在a中的所有元素 i 是一个变量

    s = 'fdsag'
    for i in s:
        print(i)

     结果:

  • 相关阅读:
    轻松处理高于平常10倍的视频需求,还能节省60%的IT成本,蓝墨做对了什么?
    支付宝研究员王益的建议:“学好语文,才能写好代码”
    Flutter+FaaS一体化任务编排的思考与设计
    开放下载!《大促背后的前端核心业务实践》
    揭秘!信息检索技术高端玩法
    秒懂云通信:如何用阿里云语音通知服务(小白指南)
    卡顿人生,如何拯救?
    阿里云荣获可信云容器安全能力先进级认证, ACK/ACR为企业级安全护航
    飞天大数据产品价值解读— SaaS模式云数据仓库MaxCompute
    阿里产品专家:高情商的技术人,如何做沟通?
  • 原文地址:https://www.cnblogs.com/wzbk/p/8336841.html
Copyright © 2011-2022 走看看