zoukankan      html  css  js  c++  java
  • day 07总结(数字类型内置方法/字符串类型内置方法)

    一、数字类型内置方法

    整型和浮点型统称为数字类型。

    1.整型内置方法(int)

    • 作用:描述年龄、号码、等级等。

    • 定义方式:可以使用int()方法将纯数字的字符串转为十进制的整型。

      使用方法:

      age = 20
      x = int('20')
      print(type(age))
      print(type(x))
      

      结果:

      <class 'int'>
      <class 'int'>
      

      错误定义方式:

      x = int('1.1')

    • 内置方法:无内置方法,只有算术运算和比较运算。

    • 存一个值or多个值:一个值。

    • 是否有序:不存在是否有序一说。

    • 是否可变:不可变数据类型。

      说明:

      x = 10
      print(id(x))
      x += 1
      print(id(x))
      

      结果:

      140713871926384
      140713871926416
      

      变量值改变,id同时跟着改变,所以整型为不可变数据类型。

    2.浮点型内置方法(float)

    • 作用:描述薪资、身高、体重等。

    • 定义方式:可以使用float()方法将纯数字的字符串转为浮点型数字。

      使用方法:

      salary = 3.2
      x = float('100')
      y = float('11.1')
      print(type(salary))
      print(type(x))
      print(x)
      print(type(y))
      

      结果:

      <class 'float'>
      <class 'float'>
      100.0
      <class 'float'>
      
    • 内置方法:无内置方法,只有算术运算和比较运算。

    • 存一个值or多个值:一个值。

    • 是否有序:不存在是否有序一说。

    • 是否可变:不可变数据类型。

      说明:

      salary = 3.2
      print(id(salary))
      salary = 4.2
      print(id(salary))
      

      结果:

      2044777211080
      2044777211056
      

      变量值改变,id同时跟着改变,所以浮点型为不可变数据类型。

    二、字符串类型内置方法

    • 作用:描述人的名字、单个爱好、地址、国家等。

    • 定义:使用''、""、''''''、""""""包裹的的一串字符。

      • u'unicode': unicode编码的字符串。
      • b'101': 二进制编码的字符串。
      • r'\n': 原生字符串,也就是说'\n'这是普通的两个字符,并没有换行的意思。

      使用方法:

      s1 = 'Tbb'
      s2 = str(1.1)
      print(type(s1))
      print(type(s2))
      

      结果:

      <class 'str'>
      <class 'str'>
      
    • 常用操作+内置方法:分为优先掌握、需要掌握、其他操作。

    1.优先掌握:

    1.1 按索引取值(只可取不可改变)

    使用方法:

    s1 = 'My name'
    print(s1[4])
    print(s1[-1])
    

    结果:

    a
    e
    

    1.2 切片(顾头不顾尾,步长)

    使用方法:

    s1 = 'My name'
    print(s1[1:4])	#切片,取出索引1,2,3
    print(s1[0::2]) #切片,步长为2
    

    结果:

    y n
    M ae
    

    1.3 长度len

    使用方法:

    s1 = 'My name'
    print(len(s1))
    

    结果:

    7

    1.4 成员运算in和not in

    使用方法:

    s1 = 'My name is Tbb,age is 20'
    print('Tbb' in s1)
    print('Tom' in s1)
    print('20' not in s1)
    

    结果:

    True
    False
    False
    

    1.5 移除空白strip()

    使用方法:

    s1 = '    my love    '
    s2 = '****your name!!!!'
    print(s1.strip())	## strip()默认为‘ ’,并且不修改原值,新创建空间
    print(s2.strip('*!em'))
    

    结果:

    my love
    your na
    

    1.6 切分split

    使用方法:

    ip = '11.11.22.33'
    ip1 = ip.split('.')
    ip2 = ip.split('.',2)
    print(ip1)
    print(ip2)
    

    结果:

    ['11', '11', '22', '33']
    ['11', '11', '22.33']
    

    1.7 循环

    使用方法:

    s1 = 'My name'
    for i in s1:
        print(i)
    

    结果:

    M
    y
     
    n
    a
    m
    e
    

    2.需要掌握:

    2.1 lstrip()和rstrip()

    使用方法:

    s1 = '****my name***'
    print(s1.lstrip('*'))
    print(s1.rstrip('*'))
    

    结果:

    my name***
    ****my name
    

    2.2 lower()和upper()

    使用方法:

    s1 = 'My name'
    print(s1.lower())
    print(s1.upper())
    

    结果:

    my name
    MY NAME
    

    2.3 startswith()和endswith()

    使用方法:

    s1 = 'My name'
    print(s1.startswith('my'))
    print(s1.endswith('name'))
    

    结果:

    False
    True
    

    2.4 rsplit()

    使用方法:

    ip = '11.22.33.44'
    ip1 = ip.split('.',2)
    ip2 = ip.rsplit('.',2)
    print(ip1)
    print(ip2)
    

    结果:

    ['11', '22', '33.44']
    ['11.22', '33', '44']
    

    2.5 join()

    使用方法:

    s1 = ['11','22','33','44']
    print('.'.join(s1))
    

    结果:

    11.22.33.44

    2.6 replace()

    使用方法:

    s1 = 'I like swimming'
    print(s1.replace('swimming','running'))
    

    结果:

    I like running

    2.7 isdigit()

    使用方法:

    salary1 = '111'
    salary2 = '111.1'
    print(salary1.isdigit())  
    print(salary2.isdigit())
    

    结果:

    True
    False
    

    3.其他操作

    3.1 find()、rfind()、index()、rindex()、count()

    使用方法:

    msg = 'my name is tank, tank shi sb, hha'
    
    print(f"msg.find('tank'): {msg.find('tank')}")  # 找不到返回-1
    print(f"msg.find('tank',0,3): {msg.find('tank',0,3)}")
    print(f"msg.rfind('tank'): {msg.rfind('tank')}")  # 找不到返回-1
    print(f"msg.index('tank'): {msg.index('tank')}")  # 找不到报错
    print(f"msg.rindex('tank'): {msg.rindex('tank')}")  # 找不到报错      
    print(f"msg.count('tank'): {msg.count('tank')}")
    

    结果:

    msg.find('tank'): 11
    msg.find('tank',0,3): -1
    msg.rfind('tank'): 17
    msg.index('tank'): 11
    msg.rindex('tank'): 17
    msg.count('tank'): 2
    

    3.2 center()、ljust()、rjust()、zfill()

    使用方法:

    print(f"'info tbb'.center(50,'*'): {'info tbb'.center(50,'*')}")
    print(f"'info tbb'.ljust(50,'*'): {'info tbb'.ljust(50,'*')}")
    print(f"'info tbb'.rjust(50,'*'): {'info tbb'.rjust(50,'*')}")
    print(f"'info tbb'.zfill(50): {'info tbb'.zfill(50)}")  # 默认用0填充
    

    结果:

    'info tbb'.center(50,'*'): ********************info tbb*********************
    'info tbb'.ljust(50,'*'): info tbb*****************************************
    'info tbb'.rjust(50,'*'): *****************************************info tbb
    'info tbb'.zfill(50): 00000000000000000000000000000000000000000info tbb
    

    3.3 expandtabs()

    使用方法:

    print(f"a\\tb\\tc: %s"%('a\tb\tc\t'))  # 默认制表符8个空格
    print(f"'a\\tb\\tc'.expandtabs(32): %s"%('a\tb\tc\t'.expandtabs(32)))
    

    结果:

    a\tb\tc: a	b	c	
    'a\tb\tc'.expandtabs(32): a                               b                               c                               
    

    3.4 capitalize()、swapcase()、title()

    使用方法:

    s1 = 'my Name'
    print(f"s1.capitalize(): {s1.capitalize()}")
    print(f"s1.swapcase(): {s1.swapcase()}")  # 大小写互转
    print(f"s1.title(): {s1.title()}")
    

    结果:

    s1.capitalize(): My name
    s1.swapcase(): MY nAME
    s1.title(): My Name
    

    3.5 is数字系列

    • isdecimal(): 检查字符串是否值包含十进制字符,如果是返回True,否则返回False。
    • isdigit(): 如果字符串只包含数字则返回True,否则返回False。
    • isnumeric(): 如果字符串中只包含数字字符,则返回True,否则返回False。
    • isalnum(): 如果字符串至少有一个字符并且所有字符都是字母或数字则返回True,否则返回False。
    • isalpha(): 如果字符串至少有一个字符并且所有字符都是字母则返回True,否则返回False。
    • islower(): 如果字符串中只包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回True,否则返回False。
    • isspace(): 如果字符串中只包含空白,则返回True,否则返回False
    • isupper(): 如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回True,否则返回False。
    • istitle(): 如果字符串是标题类型的(见title()),则返回True,否则返回False。

    只是为了告诉你,判断是否为数字时除了中文数字以后使用isdigit()即可。其他只做了解。

    • 存一个值or多个值:一个值。

    • 是否有序:字符串存在索引是有序的。

    • 是否可变:不可变数据类型。

      说明:

      name = 'Tbb'
      print(id(name))
      name = 'frank'
      print(id(name))
      

      结果:

      1264470942584
      1264470942752
      

      变量名改变,id同时跟着改变,所以字符串类型为不可变数据类型。

  • 相关阅读:
    列表
    CENTOS安装xwindow
    查看LINUX系统的配置
    LINUX开启SAMBA服务
    oracle linux 7 yum报错解决:COULD NOT RESOLVE HOST: YUM.ORACLE.COM
    ORACLE百分比分析函数RATIO_TO_REPORT() OVER()
    用matlab计算线性回归问题
    OL7.6上RPM方式安装Oracle 19c
    使用vnc远程操控Centos7.6
    OPATCH在线补丁
  • 原文地址:https://www.cnblogs.com/mgytz/p/11289154.html
Copyright © 2011-2022 走看看