zoukankan      html  css  js  c++  java
  • python3 基础数据类型

    一、基础数据类型分类

    python的数据类型主要包括以下几种:

    1.数字

    2.字符串

    3.列表

    4.字典

    5.元组

    6.集合



    1.数字 int

    数字主要是用于计算用的,使用方法并不多

    #bit_length() 当十进制用二进制表示时,最少使用的位数
    #整数的bit_length方法运行可以查询以二进制表示一个数字的值所需的位数。
    v = 11 data = v.bit_length() print(data)

    运行结果

    # 数字11在二进制情况下占4位
    4
    
    Process finished with exit code 0

    2.布尔值 bool

    布尔值就两种形式:True 、 False。 反应条件的正确与否。

    真    1    True
    假    0    False

    3. 字符串

    3.1 索引

    索引即字符串元素的下标,字符串第一个元素的索引为0,后面的索引以此类推;

    元素总个数等于总索引加一。

    a = 'ABCDEFGHIJK'
    print(a[0])  # 输出值:A
    print(a[3])  # 输出值:D
    print(a[5])  # 输出值:F
    print(a[7])  # 输出值:H

    3.2 字符串切片

    切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾尾)。

    (步长:循环体中计数器每次的增量值,增量也可以是负数的)

    a = 'ABCDEFGHIJK'
    print(a[0:3])
    print(a[2:5])
    print(a[0:]) #默认到最后一个元素
    print(a[0:-1]) #-1就是最后一个元素
    print(a[0:5:2]) #加步长
    print(a[5:0:-2]) #反向加步长

    3.3 字符串的常用方法

    •  str.swapcase()      大小写翻转
    # 返回大小写字母转换后生成的新字符串。
    str = "this is string example....wow!!!"
    print (str.swapcase())
    
    str = "This Is String Example....WOW!!!"
    print (str.swapcase())
    
    
    输出结果:
    
    THIS IS STRING EXAMPLE....WOW!!!
    tHIS iS sTRING eXAMPLE....wow!!!
    str.swapcase() 
    •  str.capitalize()     将字符串的第一个字母变成大写,其他字母变小写。
    # 该方法返回一个首字母大写的字符串。
    
    str = "this is string example from runoob....wow!!!"
    
    print ("str.capitalize() : ", str.capitalize())
    
    
    输出结果:
    
    str.capitalize() :  This is string example from runoob....wow!!!
    str.capitalize()
    •  str.center()    居中、填充
    # 返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。
    
    str.center(width[, fillchar])
    width -- 字符串的总宽度。
    fillchar -- 填充字符。
    
    
    str = "[www.runoob.com]"
    
    print ("str.center(40, '*') : ", str.center(40, '*'))
    
    输出结果:
    
    str.center(40, '*') :  ************[www.runoob.com]************
    str.center()
    •  str.startswith()    判断是否以......开头
    # startswith() 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False。如果参数 beg 和 end 指定值,则在指定范围内检查。如果检测到字符串则返回True,否则返回False。
    
    str.startswith(str, beg=0,end=len(string));
    
    str -- 检测的字符串。
    strbeg -- 可选参数用于设置字符串检测的起始位置。
    strend -- 可选参数用于设置字符串检测的结束位置。
    
    
    # 实例:
    str = "this is string example....wow!!!"
    print (str.startswith( 'this' ))
    print (str.startswith( 'string', 8 ))
    print (str.startswith( 'this', 2, 4 ))
    
    
    输出结果:
    True
    True
    False
    str.startswith()
    •  str.endswith()   判断是否以......结尾
    # endswith() 方法用于判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回True,否则返回False。可选参数"start"与"end"为检索字符串的开始与结束位置。如果字符串含有指定的后缀返回True,否则返回False。
    
    str.endswith(suffix[, start[, end]])
    
    suffix -- 该参数可以是一个字符串或者是一个元素。
    start -- 字符串中的开始位置。
    end -- 字符中结束位置。
    
    # 实例:
    Str='Runoob example....wow!!!'
    suffix='!!'
    print (Str.endswith(suffix))
    print (Str.endswith(suffix,20))
    suffix='run'
    print (Str.endswith(suffix))
    print (Str.endswith(suffix, 0, 19))
    
    
    
    执行结果:
    True
    True
    False
    False
    str.endswith()
    •  str.count()    元素在字符串中出现的个数,可切片
    # count() 方法用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。该方法返回子字符串在字符串中出现的次数。
    
    
    str.count(sub, start= 0,end=len(string))
    
    sub -- 搜索的子字符串
    start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。
    end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。
    
    
    实例:
    str="www.runoob.com"
    sub='o'
    print ("str.count('o') : ", str.count(sub))
    
    sub='run'
    print ("str.count('run', 0, 10) : ", str.count(sub,0,10))
    
    
    执行结果:
    str.count('o') :  3
    str.count('run', 0, 10) :  1
    str.count()
    •  str.expandtabs()    字符长度不足8个,补全8个;超过8个不足18个,补全16个;以此类推
    # expandtabs() 方法把字符串中的 tab 符号('	')转为空格,tab 符号('	')默认的空格数是 8。该方法返回字符串中的 tab 符号('	')转为空格后生成的新字符串。
    
    
    
    str.expandtabs(tabsize=8)
    
    tabsize -- 指定转换字符串中的 tab 符号('	')转为空格的字符数。
    
    
    
    实例:
    str = "this is	string example....wow!!!"
    
    print ("原始字符串: " + str)
    print ("替换 \t 符号: " +  str.expandtabs())
    print ("使用16个空格替换 \t 符号: " +  str.expandtabs(16))
    
    
    
    执行结果:
    原始字符串: this is     string example....wow!!!
    替换 	 符号: this is string example....wow!!!
    使用16个空格替换 	 符号: this is         string example....wow!!!
    str.expandtabs()
    •  str.find()    寻找字符串中的某个元素是否存在,返回元素索引,可切片,不存在返回-1
    # find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果指定范围内如果包含指定索引值,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。
    
    
    
    str.find(str, beg=0, end=len(string))
    
    str -- 指定检索的字符串
    beg -- 开始索引,默认为0。
    end -- 结束索引,默认为字符串的长度。
    
    
    
    实例:
    str1 = "Runoob example....wow!!!"
    str2 = "exam";
     
    print (str1.find(str2))
    print (str1.find(str2, 5))
    print (str1.find(str2, 10))
    
    
    
    执行结果:
    7
    7
    -1
    str.find()
    •  str.index()    用法同find();不同:找不到报错
    # index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。
    
    
    
    str.index(str, beg=0, end=len(string))
    
    str -- 指定检索的字符串
    beg -- 开始索引,默认为0。
    end -- 结束索引,默认为字符串的长度
    
    
    
    实例:
    str1 = "Runoob example....wow!!!"
    str2 = "exam";
    
    print (str1.index(str2))
    print (str1.index(str2, 5))
    print (str1.index(str2, 10))
    
    
    
    执行结果(找不到会报错):
    7
    7
    Traceback (most recent call last):
      File "test.py", line 8, in <module>
        print (str1.index(str2, 10))
    ValueError: substring not found
    str.index()
    •  str.split()    以某个指定元素分割字符串成一个列表
    # split()通过指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串。 可用于将字符串转换成列表。
    
    
    
    str.split(str="", num=string.count(str)).
    
    str -- 分隔符,默认为所有的空字符,包括空格、换行(
    )、制表符(	)等。
    num -- 分割次数。
    
    
    
    实例:
    str = "this is string example....wow!!!"
    print (str.split( ))
    print (str.split('i',1))
    print (str.split('w'))
    
    
    
    执行结果:
    ['this', 'is', 'string', 'example....wow!!!']
    ['th', 's is string example....wow!!!']
    ['this is string example....', 'o', '!!!']
    str.split()
    •  str.strip()    去除字符串前后空格及指定元素(去除制表符、换行、空格)
    #  strip() 方法用于移除字符串头尾指定的字符(默认为空格)。
    
    
    
    str.strip([chars]);
    
    chars -- 移除字符串头尾指定的字符。
    
    
    
    实例:
    str = "*****this is string example....wow!!!*****"
    print (str.strip( '*' ))
    
    
    
    执行结果:
    this is string example....wow!!!
    str.strip()
    •  str.lstrip()    去除字符串左边的空格及指定元素
    # lstrip() 方法用于截掉字符串左边的空格或指定字符。返回截掉字符串左边的空格或指定字符后生成的新字符串。
    
    
    
    str.lstrip([chars])
    
    chars --指定截取的字符。
    
    
    
    实例:
    str = "     this is string example....wow!!!     "
    print( str.lstrip() );
    str = "88888888this is string example....wow!!!8888888"
    print( str.lstrip('8') )
    
    
    
    执行结果:
    this is string example....wow!!!     
    this is string example....wow!!!8888888
    str.lstrip()
    •  str.rstrip()    去除字符串右边的空格及指定元素
    # rstrip() 删除 string 字符串末尾的指定字符(默认为空格).
    
    
    
    str.rstrip([chars])
    
    chars -- 指定删除的字符(默认为空格)
    
    
    
    实例:
    str = "     this is string example....wow!!!     "
    print (str.rstrip())
    str = "*****this is string example....wow!!!*****"
    print (str.rstrip('*'))
    
    
    
    执行结果:
         this is string example....wow!!!
    *****this is string example....wow!!!
    str.rstrip()
    •  str.replace()    对字符串元素进行替换
    # replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。返回字符串中的 old(旧字符串) 替换成 new(新字符串)后生成的新字符串,如果指定第三个参数max,则替换不超过 max 次。
    
    
    
    str.replace(old, new[, max])
    
    old -- 将被替换的子字符串。
    new -- 新字符串,用于替换old子字符串。
    max -- 可选字符串, 替换不超过 max 次
    
    
    
    实例:
    str = "www.w3cschool.cc"
    print ("菜鸟教程新地址:", str)
    print ("菜鸟教程新地址:", str.replace("w3cschool.cc", "runoob.com"))
    
    str = "this is string example....wow!!!"
    print (str.replace("is", "was", 3))
    
    
    
    执行结果:
    菜鸟教程新地址: www.w3cschool.cc
    菜鸟教程新地址: www.runoob.com
    thwas was string example....wow!!!
    str.replace()
    •  str.isalnum()    判断是否由字母或者数字组成
    # isalnum() 方法检测字符串是否由字母和数字组成。如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False
    
    
    
    str.isalnum()
    
    
    
    实例:
    str = "runoob2016"  # 字符串没有空格
    print (str.isalnum())
     
    str = "www.runoob.com"
    print (str.isalnum())
    
    
    
    执行结果:
    True
    False
    str.isalnum()
    •  str.isalpha()    判断是否只由字母组成

    用法同 str.isalnum()

    •  str.isdigit()    判断是否只由数字组成

    用法同 str.isalnum()

    •  str.title()    首字母大写,其余都小写
    #  title() 方法返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写。返回"标题化"的字符串,就是说所有单词都是以大写开始。
    
    
    
    str.title()
    
    
    
    实例:
    str = "this is string example from runoob....wow!!!"
    print (str.title())
    
    
    
    执行结果:
    This Is String Example From Runoob....Wow!!!
    str.title()
    •  str.join()    字符串中插入指定元素(将列表转换成字符串)
    #  join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。返回通过指定字符连接序列中元素后生成的新字符串。
    
    
    
    str.join(sequence)
    
    sequence -- 要连接的元素序列。
    
    
    
    实例:
    s1 = "-"
    s2 = ""
    seq = ("r", "u", "n", "o", "o", "b") # 字符串序列
    print (s1.join( seq ))
    print (s2.join( seq ))
    
    
    
    执行结果:
    r-u-n-o-o-b
    runoob
    str.join()
  • 相关阅读:
    配置文件配置网络
    安装Linux centos 7.3
    java二维字符数组的输入
    前端保存JSON文件到本地
    在Springboot中使用swagger2
    Vue better-scroll使用指南
    解决端口占用问题
    CheckSum(校验和)计算
    区分按字寻址与按字节寻址
    进制转换
  • 原文地址:https://www.cnblogs.com/bigtreei/p/7752361.html
Copyright © 2011-2022 走看看