zoukankan      html  css  js  c++  java
  • 数据类型及字符编码 (需要重新修改)

    1.数据类型:
      数字(整型,长整型,浮点型,复数)
      字符串:在介绍字符编码时介绍字节bytes类型
      列表
      元祖
      字典
      集合

    2.整型 int
      作用:年级/等级/身份证号等整型数字相关
      定义: age=10  本质上age=int(10)

    十进制转成。。。进制
    print(bin(13))    #将整型转变成二进制
    print(oct(13))    #将整型转变成八进制
    print(hex(13))    #将整型转变成十六进制

    常用操作+内置方法

    # 存一个值
    
    # 不可变
    # x=10
    # print(id(x))
    # x=11
    # print(id(x))

     3. 浮点型 float 

      作用:薪资/身高/体重等浮点数相关

     salary=3000.3 #本质salary=float(3000.3)

     类型转换

    print(float(10))
    print(float(1.1))
    print(float('1.1'))

     

    4.字符串类型 str

      作用:记录描述性值的状态,比如名字/性别等

    msg='hello world' #msg=str('hello world')

     类型转换:可以把任意类型转成字符串类型

    res1=str(10)
    res2=str(10.3)
    res3=str([1,2,3])
    res4=str({'x':1}) #res4="{'x':1}"

     

    *****常用操作+内置的方法

    1.按索引取值(正向取+反向取):只能取

    msg='hello world'
    
    print(type(msg[0]))
    print(msg[-1])
    
    msg[0]='H'

    2.切片(顾头不顾尾,步长)

    msg='hello world'
    print(msg[0]+msg[1]+msg[2])
    print(msg[0:5])
    print(msg[0:5:2]) 
    print(msg[0:]) 
    print(msg[:]) 
    
    print(msg[-1:-5:-1]) #-1 -2 -3 -4
    print(msg[::-1]) #-1 -2 -3 -4

    3.长度 len :统计的是字符的个数

    4.成员运算 in 和 not in : 判断一个子字符是否存在于一个大字符串中

    # msg='hello world'
    # print('ho' in msg)
    # print('ho' not in msg)

    5.移除空白 strip : 移除字符串左右两边的某些字符

    msg='      hello      '
    
    print(msg.strip(' '))
    print(msg.strip())
    print(msg)
    
    name=input('name>>>: ').strip() #name='egon'
    pwd=input('password>>>: ').strip()
    
    if name == 'egon' and pwd == '123':
        print('login successfull')
    else:
        print('username or password error')
    
    msg='***h**ello**********'
    print(msg.strip('*'))
    
    msg='*-=+h/ello*(_+__'
    print(msg.strip('*-=+/(_'))

    6.切分 split :把有规律的字符串切成列表从而方便取值

    info='egon:18:180:150'
    res=info.split(':',1)
    print(res)
    print(res[1])
    
    
    info='egon:18:180:150'
    res=info.split(':')
    print(res)
    
    
    s1=res[0]+':'+res[1]+':'+res[2]+':'+res[3]
    s1=''
    for item in res:
        s1+=item
    print(s1)
    
    
    s1=':'.join(res)
    print(s1)
    
    ':'.join([1,2,3,4,5])

    7.循环

    for i in 'hello':
        print(i)

    ****需要掌握的操作

    1.strip , lstrip , rstrip 

    msg='*****hello****'
    print(msg.strip('*'))
    print(msg.lstrip('*'))
    print(msg.rstrip('*'))

    2.lower , upper

    msg='AaBbCc123123123'
    print(msg.lower())
    print(msg.upper())
    
    #执行之后
    #aabbcc123123123
    #AABBCC123123123

    3. startswith , endswith

    msg='alex is dsb'
    print(msg.startswith('alex'))
    print(msg.endswith('sb'))
    
    #执行之后
    #True
    #True

    4.format 的三种玩法

    msg='my name is %s my age is %s' %('egon',18)
    print(msg)
    
    #执行之后
    #my name is egon my age is 18
    msg='my name is {name} my age is {age}'.format(age=18,name='egon')
    print(msg)
    
    #执行之后
    #my name is egon my age is 18
    msg='my name is {} my age is {}'.format(18,'egon')
    msg='my name is {0}{0} my age is {1}{1}{1}'.format(18,'egon')
    print(msg)
    
    #执行之后
    #my name is 1818 my age is egonegonegon

    5.split , rsplit 

    cmd='get|a.txt|33333'
    print(cmd.split('|',1))
    print(cmd.rsplit('|',1))
    
    #执行之后
    #['get', 'a.txt|33333']
    #['get|a.txt', '33333']

    6. replace 

    msg='kevin is sb kevin kevin'
    print(msg.replace('kevin','sb',2))
    
    #sb is sb sb kevin

    7. isdigit (当字符串内为纯数字时结果为True

    res='11111'
    print(res.isdigit())
    int(res)
    
    #True
    age_of_bk=18
    inp_age=input('your age: ').strip()
    if inp_age.isdigit():
        inp_age=int(inp_age) #int('asdfasdfadfasdf')
        if inp_age > 18:
            print('too big')
        elif inp_age < 18:
            print('to small')
        else:
            print('you got it')
    else:
        print('必须输入纯数字')

    ** (了解)

    1.find, rfind, index, rindex, count

    find 和 index用法差不多,find比index功能强大,优先使用find

    print('xxxkevin is sb kevin'.find('kevin'))
    print('xxxkevin is sb kevin'.index('kevin'))
    print('xxxkevin is sb kevin'.rfind('kevin'))
    print('xxxkevin is sb kevin'.rindex('kevin'))
    
    #执行之后
    3
    3
    15
    15
    print('kevin is kevin is kevin is sb'.count('kevin'))
    
    #执行之后
    # 3

    2. center, ljust ,rjust , zfill

    print('egon'.center(50,'*'))
    print('egon'.ljust(50,'*'))
    print('egon'.rjust(50,'*'))
    print('egon'.zfill(50))
    
    #执行之后
    ***********************egon***********************
    egon**********************************************
    **********************************************egon
    0000000000000000000000000000000000000000000000egon

     3. captalize , swapcase , title

    print('my name is kevin'.capitalize())  #一句话的第一个字母大写
    print('AaBbCc'.swapcase())    #将大写字母变成小写,小写变大写
    print('my name is kevin'.title())    #每一个单词的首字母大写
    
    #执行之后
    My name is kevin
    aAbBcC
    My Name Is Kevin

    4.is其他

    name='egon123'
    print(name.isalnum()) #字符串由字母或数字组成
    print(name.isalpha()) #字符串只由字母组成
    
    print(name.islower())
    print(name.isupper())
    name='    '
    print(name.isspace())
    msg='I Am Egon'
    print(msg.istitle())
    
    
    #执行之后
    True
    False
    True
    False
    True
    True
  • 相关阅读:
    嵌入式开发之基于模型的设计思想
    tslib库的移植以及"selected device is not a touchscreen I understand"问题解决
    rocketMq broker.conf全部参数解释
    rocketMq 消息偏移量 Offset
    3、验证,数据绑定和类型转换
    2、springframe Resources
    1、Spring Framework 5.0简述
    POI导出Excel时下拉列表值超过255的问题(String literals in formulas can't be bigger than 255 characters ASCII)
    rocketMq console MQClientException异常
    25. Secure Object Implementations(安全对象实现)
  • 原文地址:https://www.cnblogs.com/kp1995/p/9998079.html
Copyright © 2011-2022 走看看