• python各数据类型及内置方式:


    一般的采用句点表示法即: 变量名后接小数点再接函数()

    1.数字类型int()
    int只能转纯数字的字符串,小数点不行

    进制转换:
    # 其他进制转换十进制
    print(int('1100', 2)) # int中的第二个参数,用来表示第一个参数的进制,
    即2进制转换十进制,将1100这个二进制数转换为10进制
    print(int('14', 8)) # 8进制转换十进制
    print(int('c', 16)) # 16进制转换十进制

    # 10进制转换其他进制,memory三种方法
    # 10进制转换二进制
    print(bin(12)) # 0b1100 0b表示后面的数字是二进制数,Binary
    # 10进制转八进制
    print(oct(12)) # 0o14 0o表示后面的数字是八进制数 验证:14 >>> 1*(8**1) + 4*(8**0)) Octal
    # 10进制转16进制
    print(hex(12)) # 0xc 0x表示后面的数字是十六进制数 Hexadecima

    有序与无序
    有序:可索引的数据 列表
    无序: 字典
    # 可变类型与不可变类型
    可变类型:值在改变的情况下,id不变,说明你改的是原值
    不可变类型:值改变的情况下,id一定改变

    浮点型float 含有小数点的数

    2.字符串 str()
    任何数据类型都可通过str()转换成字符串类型

    索引
    # 1、按索引取值(正向取+反向取) :只能取
    # s = 'hello big baby~'
    # print(s[0])
    # 2、切片(顾头不顾尾,步长):从一个大的字符串中截取一段新的小字符串
    # 左边的固定就是头,右边固定就是位 没有说按数字来分头尾
    # print(s[0:5]) # hello 顾头不顾尾就是说实际只取到0——4位
    # print(s[0:10:1]) # hello 步长不写,默认是1
    # print(s[0:10:2]) # 2表示步长,步长表示隔几个取一个
    负向索引:

    3.长度len()统计字符串中字符的个数
    s1 = ' '
    print(len(s1)) #空格也表示字符串中的一个字符,所以结果为1


    成员运算in和not in: 判断一个子字符串是否存在于一个大的字符串中:
    # print('egon' in 'egon is dsb and egon is sb')
    # print('g' in 'egon is dsb and egon is sb')
    # print('jason' not in 'egon is dsb and egon is sb')
    结果为布尔值

    4.去掉两边的空白字符strip()
    # name1 = 'jason'
    # name2 = ' jason '.strip()
    # print(name1 == name2)

    name3 = '$$$$$eg$on$$$$'
    print(name3.strip('$')) # eg$on 去掉两边的$

    name4 = '% ¥#jason&*'
    print(name4.strip('% ¥#*')) # jason& 去掉两边选定的字符

    ps:
    # rstrip() lstrip()
    # name5 = '$$$$jason$$$$'
    # print(name5.lstrip('$')) # left左边 删除左边选定字符
    # print(name5.rstrip('$')) # right右边 删除右边选定字符

    5.切分split() 对原字符串中的某种分隔符,使用split()分割为列表取值

    data = 'jaso n|123| handsome'
    print(data.split('|')) # ['jaso n', '123', ' handsome']
    把原字符串中的字符'|'当作分隔符,分割成列表,列表,列表(重要的事说三遍)
    列表将不再有原先字符中的分隔符'|’

    '
    data = 'jaso n|123| handsome'
    # print(data.split('o')) # ['jas', ' n|123| hands', 'me'] 切割的顺序其实从左往右的
    # print(data.split('o',1)) # ['jas', ' n|123| handsome'] 切割的顺序其实从左往右的 只切一个
    # print(data.rsplit('o',1)) # ['jaso n|123| hands', 'me'] 切割的顺序其实从右往左的 只切一个
    # 所以说如果不指定那么split和rsplit效果是一样

    6.# 3、startswith,endswith 布尔值
    # s1 = 'egon is dsb'
    # print(s1.startswith('e')) # 判断字符串是否以什么什么开头
    # print(s1.endswith('n')) # 判断字符串是否以什么什么结尾

    7.format的三种玩法
    其一 按位置占位跟%s %d一致 老程序员喜欢用%,但现在python推荐用format
    # str1 = 'my name is {} my age is {}'.format('jason',18)
    # str1 = 'my name is {} my age is {}'.format(18,'jason',)
    # print(str1)

    其二 按索引占位
    str1 = 'my {1} name is {0} my {0} age is {0}'.format('egon',18)
    print(str1) # my 18 name is egon my egon age is egon

    其三 指名道姓占位(关键字传参)
    # str1 = 'my {name} name is {age} my {name} age is {name}'.format(name='jason',age=18)
    # print(str1)

    8.join()拼接
    # data = 'jason|123|handsome'
    # res_list = data.split('|')
    # print(res_list)

    # res_str = '$'.join(res_list) # 将容器类型中的多个元素通过指定字符拼接成一个字符串
    # print(res_str)

      

    # l = ['1','a','b'] # 1|a|b 要注意列表中的数据类型必须相同,不能是[1,'a','b']
    # res = '|'.join(l)
    # print(res)

    9.replace()替换
    str = 'egon is dsb and egon is sb he has a BENZ'
    res = str.replace('egon','kevin',1)
    print(res) # 把原字符串中的'egon'替换成'kevin',1表示从左往右只替换一个,
    # 没有1则会全部替换

    10.indaigit # 判断字符串中包含的是否为纯数字
    # while True:
    # age = input('>>>:')
    # if age.isdigit(): #如果input中的字符串是纯整数则执行该if中的代码块
    # age = int(age) #要注意输入<=28的纯整数时,会在此行断掉继续执行while循环
    # if age > 28:
    # print('阿姨好')
    # else: # 如果不是纯整数则执行else代码块
    # print('你他妈的能不能好好输')

    12.ps:索引系列
    # 需要了解的内置方法
    # 1、find,rfind,index,rindex,count
    s = 'kevin is dsb o and kevin is sb'
    # print(s.find('dsb')) # 返回的是d字符所在的索引值
    # print(s.find('xxx')) # 找不到的时候不报错返回的是-1
    # print(s.find('i',0,3)) # 还可以通过索引来限制查找范围
    # print(s.index('o')) # 返回所传字符所在的索引值
    # print(s.index('i',0,3)) # 返回所传字符所在的索引值 会报错
    # print(s.count('n')) # 统计字符出现的次数

    13.center,ljust,rjust,zfill 填充系列
    s9 = 'jason'
    # print(s9.center(12,'*')) # ***jason**** 总共12个字符jason居中其余依次填充'*'
    # print(s9.ljust(10,'$')) # jason$$$$$ 总共10个字符jason在左依次填充’$'
    # print(s9.rjust(9,'$')) # $$$$jason 总共9个字符jason在右依次填充’$'
    # print(s9.zfill(11)) # 000000jason 总共11个字符jason前方依次填充’0'

    14.expandtabs() 扩展
    # s10 = 'a bc'
    # print(s10.expandtabs(100))

    captalize,swapcase,title 字母大写系列
    # s12 = 'hElLo WoRLD sH10'
    # print(s12.capitalize()) # Hello world 首字母大写
    # print(s12.swapcase()) # 大小写互换
    # print(s12.title()) # 每个单词的首字母大小

    15.is开头数字识别系列
    num1 = b'4' # bytes
    num2 = u'4' # unicode,python3中无需加u就是unicode
    num3 = '壹' # 中文数字
    num4 = 'Ⅳ' # 罗马数字
    # ''.isnumeric(): unicode,中文数字,罗马数字 只要是表示数字都识别
    print(num2.isnumeric()) # True
    print(num3.isnumeric()) # True
    print(num4.isnumeric()) # True

    # ''.isdecimal(): unicode 只识别普通的阿拉伯数字
    print(num2.isdecimal()) # True
    print(num3.isdecimal()) # False
    print(num4.isdecimal()) # True

    # ''.isdigit() :bytes,unicode 通常情况下使用isdigit就已经满足需求了
    print(num1.isdigit()) # True
    print(num2.isdigit()) # True
    print(num3.isdigit()) # False
    print(num4.isdigit()) # False

    16.list()构建列表
    l1=list({'name':'jason','password':'123'})
    print(l1) # ['name', 'password'] list只取字典中的key值构成列表
    # list内部原理就是for循环取值 然后一个个塞到列表中去
    # l=list('abc') # ['a', 'b', 'c']

    17.索引系列
    test描述:
    # l = ['a', 'b', 'c', 'd']
    # print(l[0:4:1]) # ['a', 'b', 'c', 'd'] 实际只取0到3位 步长为1
    # print(l[0::]) # ['a', 'b', 'c', 'd'] 未指定步长的情况下,默认为1
    # print(l[2::-1]) # ['c', 'b', 'a'] 顾头不顾尾,从第二位开始,步长为-1,往负轴方向索引,直至索引到结束
    # print(l[5::-1]) # ['d','c', 'b', 'a'] 因为总共只有0到3位,5已经超出第三位,所以只能从第三位开始负向取值,直至索引结束
    # print(id(l))

    18.添加系列 append() insert()
    1 = [99, 88, 77, 66]
    # [11,22,33,44,55,99,88,77,66]
    # 1.尾部添加一个66
    # l.append(66) # 注意append值能将被添加的数据当作列表的一个元素
    # print(l)

    # l.insert(2,96) # [99, 88, 96, 77, 66] 通过索引在第二位置添加元素
    # print(l) # 注意insert值能将被添加的数据当作列表的一个元素

    # l.extend([1,2,3,]) # [99, 88, 77, 66, 1, 2, 3]将列表中的元素依次追加到列表l末尾
    # print(l)

    19.删除与弹出 del pop()
    l = [1, 2, 3, 4, ]
    # del l[2] # [1, 2, 4] del适用于所有的删除操作,删除的值不可用
    # print(l)

    # res1 = l.pop() # 尾部弹出
    # res2 = l.pop()
    # res3 = l.pop()
    # print(res1,res2,res3) # 4 3 2 弹出的值还可用

    # res = l.remove(3) # 指定要删除的元素的值
    # print(l)
    # print(res) # [1, 2, 4]

  • 相关阅读:
    块结构在文件中的表示IOB【转载】
    LSTM输入层、隐含层及输出层参数理解【转载】
    L3-002 特殊堆栈 (30 分) 模拟stl
    L1-006 连续因子 (20 分) 模拟
    L2-014 列车调度 (25 分)
    L3-021 神坛 (30 分) 计算几何
    P1156 垃圾陷阱 DP
    P1063 能量项链 区间dp
    P1040 加分二叉树 区间dp
    P1605 迷宫 dfs回溯法
  • 原文地址:https://www.cnblogs.com/night-rain/p/11129782.html
Copyright © 2020-2023  润新知