• 数据类型内置方法


    1.如何理解内置方法
    每个数据类型都自带一些各自独有的功能
    2.如何调用内置方法
    数据类型通过句点符即可调用
    数据类型.内置方法
    ps:数据类型可以是具体的某个数据值也可以是数据类型关键字
    3.如何查看内置方法
    在pycharm中会自动提示
    在终端中需要按tab键 然后慢慢补全(等价于linux命令补全)

    整型与浮点型的内置方法

    1.int整型
    1.1.类型转换:将某些数据类型转成整型
    可以将字符串转成整型 但是需要注意 有特殊情况
    s1 = '123'
    print(type(s1), s1) # 字符串里面如果是纯数字 可以转
    s2 = int(s1)
    print(type(s2), s2) # 字符串里面如果是纯数字 可以转
    如果不是纯数字则无法转换 会直接报错
    int('hello')
    1.2.进制数转换:将其他进制数转成十进制
    # 十进制转其他进制数
    # print(bin(100)) # 0b1100100 二进制
    # print(oct(100)) # 0o144 八进制
    # print(hex(100)) # 0x64 十六进制
    # 其他进制转十进制数
    print(int(0b1100100)) # 100
    print(int(0o144)) # 100
    print(int(0x64)) # 100

    2.float浮点型
    类型转换:将某些数据类型转成浮点型
    # s1 = '123'
    # print(type(s1), s1) # 字符串里面如果是纯数字 可以转自动添加.0
    # s2 = float(s1)
    # print(type(s2), s2) # 字符串里面如果是纯数字 可以转自动添加.0

    s3 = '123.23'
    print(type(s3), s3) # 字符串里面如果不是纯数字 那么只允许出现一个点号
    s4 = float(s3)
    print(type(s4), s4) # 字符串里面如果是纯数字 那么只允许出现一个点号

    3.str字符串
    3.1.类型转换:可以将所有其他数据类型转成字符串
    str(任意数据类型)
    3.2.常见操作
    s1 = 'hello jason'
    # 1.索引取值
    # print(s1[0]) # h
    # print(s1[-1]) # n
    # 2.切片操作
    # print(s1[2:5]) # llo 顾头不顾尾
    # 3.间隔数\方向(默认是1 默认从左往右)
    # print(s1[1:10:1])
    # print(s1[:]) # hello jason
    # print(s1[::]) # hello jason
    # print(s1[::-1]) # nosaj olleh
    # print(s1[-1:-4:-1]) # nos
    # print(s1[-3:]) # son
    # 4.统计字符串中字符的个数(空格也算字符)
    # print(len(s1)) # 11
    # 5.移除字符串首尾指定的字符
    # ss = '$$jason$$'
    # print(ss.strip('$')) # jason
    # print(ss.lstrip('$')) # jason$$
    # print(ss.rstrip('$')) # $$jason
    # username = input('username>>>:')
    # username = username.strip() # 括号内什么都不写 默认移除首尾的空格
    '''两步合并'''
    # username = input('username>>>:').strip()
    # if username == 'jason':
    # print('登录成功')
    # else:
    # print('登录失败')
    # 6.按照指定的字符切割字符串
    # ss = "jason|123|read"
    # print(ss.split('|')) # ['jason', '123', 'read'] 结果是列表 默认全部切割
    # print(ss.split('|', maxsplit=1)) # ['jason', '123|read'] 也可以自定义次数
    # print(ss.rsplit('|', maxsplit=1)) # ['jason|123', 'read'] 也可以变方向
    # 7.字母大小写
    # res = 'JaSOn666'
    # print(res.upper()) # JASON666
    # print(res.lower()) # jason666
    # print(res.isupper()) # False (回想之前讲的小规律 布尔值相关 变量名都会有is)
    # print(res.islower()) # False
    """图片验证码忽略大小写:统一转大写或者小写 然后再比较!!!"""
    # code = 'YumT8'
    # print('展示给用户的看的验证码>>>:', code)
    # confirm_code = input('请输入您看到的验证码>>>:').strip()
    # if confirm_code.upper() == code.upper():
    # print('验证码正确')
    # else:
    # print('验证码错误')
    # 8.格式化输出 方式1 占位符 方式2 format
    # format用法1:等同于占位符
    # print('my name is {} my age is {}'.format('jason', 18))
    # format用法2:通过索引值反复使用
    # print('my name is {0} {0} my age is {1} {1}'.format('jason', 18))
    # format用法3:通过关键字反复使用
    # print('my name is {name} {name} my age is {age} {age}'.format(name='jason', age=18))
    # format究极用法
    # name = 'jason'
    # age = 18
    # print(f'my name is {name} my age is {age}')
    # 9.判断字符串中是否是纯数字
    # data = input('随便输>>>:').strip()
    # print(data.isdigit())
    # score = input('请输入您的成绩>>>:').strip()
    # if score.isdigit():
    # score = int(score)
    # else:
    # print('成绩只能是纯数字')
    # 10.替换指定的字符
    # ss = 'jason jason jason say python so easy!!! jason jason jason'
    # print(ss.replace('jason', 'tony')) # tony tony tony say python so easy!!! tony tony tony
    # print(ss.replace('jason', 'tony', 2)) # tony tony jason say python so easy!!! jason jason jason
    # 11.拼接字符串
    # print('hello' + 'world') # helloworld
    # print('hello' * 2) # hellohello
    # print('|'.join(['hello', 'world', 'jason'])) # hello|world|jason
    # 12.标题相关
    # ss = 'hello world jason JAsOn'
    # print(ss.title()) # Hello World Jason 所有单词首字母变大写
    # print(ss.swapcase()) # HELLO WORLD JASON jaSoN 大小写颠倒
    # print(ss.capitalize()) # Hello world jason jason 首字母大写 其他全部小写
    # 13.判断字符串开头或者结尾
    print('jason say hello'.startswith('j')) # True
    print('jason say hello'.startswith('ja')) # True
    print('jason say hello'.startswith('jason')) # True
    print('jason say hello'.endswith('o')) # True
    print('jason say hello'.endswith('llo')) # True
    print('jason say hello'.endswith('hello')) # True

    4.列表list
    4.1.类型转换:能够支持for循环的数据类型都可以
    list('hello') # ['h', 'e', 'l', 'l', 'o']
    list({'name': "jason", 'pwd': 123}) # ['name', 'pwd']
    4.2.内置方法
    name_list = ['jason', 'kevin', 'tony', 'jerry', 'oscar']
    # 1.索引相关操作
    # print(name_list[0]) # jason
    # print(name_list[1:4]) # ['kevin', 'tony', 'jerry'] 顾头不顾尾(左包含右不包含)
    # print(name_list[1:]) # ['kevin', 'tony', 'jerry', 'oscar']
    # print(name_list[1:4:2]) # ['kevin', 'jerry']
    # print(name_list[1:4:-1]) # []
    # 2.统计列表中所有数据值的个数
    # print(len(name_list)) # 5
    # 3.增数据
    # append:尾部追加(括号内无论传什么 都当成一个数据值追加)
    # name_list.append('jack')
    # print(name_list) # ['jason', 'kevin', 'tony', 'jerry', 'oscar', 'jack']
    # name_list.append([111, 222, 333])
    # print(name_list) # ['jason', 'kevin', 'tony', 'jerry', 'oscar', 'jack', [111, 222, 333]]
    # insert:指定索引插入(括号内无论传什么 都当成一个数据值插入)
    # name_list.insert(0, 'jasonNB')
    # print(name_list)
    # name_list.insert(1, [11, 22, 33, 44])
    # print(name_list) # ['jasonNB', [11, 22, 33, 44], 'jason', 'kevin', 'tony', 'jerry', 'oscar']
    # extend:扩展列表
    # name_list.extend([11, 22, 33, 44, 55])
    # print(name_list) # ['jason', 'kevin', 'tony', 'jerry', 'oscar', 11, 22, 33, 44, 55]
    # res = name_list + [1, 2, 3, 4, 5, 6]
    # print(res) # 不推荐使用加号扩展列表
    # 4.修改数据
    # name_list[0] = 'jasonNB'
    # print(name_list)
    # 5.移除数据
    # del:关键字删除
    # del name_list[0]
    # print(name_list) # ['kevin', 'tony', 'jerry', 'oscar']
    # pop:弹出数据
    # res = name_list.pop(0)
    # print(name_list) # ['kevin', 'tony', 'jerry', 'oscar']
    # print(res) # jason
    # remove:移除数据
    # res = name_list.remove('tony')
    # print(name_list) # ['jason', 'kevin', 'jerry', 'oscar']
    # print(res) # None:意思是什么都没有
    # 6.统计列表中某个数据值出现的次数
    # l1 = [11, 22, 111, 11, 11, 11, 11, 11, 22, 11, 22, 111, 11]
    # print(l1.count(11)) # 8
    # 7.按照大写排序
    # l1 = [22, 99, 44, 33, 11, 66, 77, 88]
    # l1.sort()
    # print(l1) # [11, 22, 33, 44, 66, 77, 88, 99] 默认升序
    # l1.sort(reverse=True)
    # print(l1) # [99, 88, 77, 66, 44, 33, 22, 11]
    5.字典dict
    5.1.类型转换
    print(dict(name='jason', pwd=123))
    5.2.常见操作
    d1 = {
    'name': 'jason',
    'pwd': 123,
    'hobby': [11, 22, 33]
    }
    # 1.统计键值对的个数
    # print(len(d1)) # 3
    # 2.按key取值(字典无法使用索引取值 因为字典是无序的!!!)
    # print(d1['name']) # jason
    # print(d1['xxx']) # 键不存在会直接报错 不推荐使用
    # print(d1.get('name')) # jason
    # print(d1.get('xxx')) # None意思是什么都没有 并且对应的布尔值时False
    # print(d1.get('xxx','键不存在的情况下 可以自定义提示信息')) # 键不存在的情况下 可以自定义提示信息
    # print(d1.get('pwd','键不存在的情况下 可以自定义提示信息')) # 123
    # 3.修改数据(语法一致)
    # d1['name'] = 'jasonNB'
    # print(d1) # {'name': 'jasonNB', 'pwd': 123, 'hobby': [11, 22, 33]}
    # 4.新增数据(语法一致)
    # d1['age'] = 18
    # print(d1) # {'name': 'jasonNB', 'pwd': 123, 'hobby': [11, 22, 33], 'age': 18}
    '''3和4语法是一样的 但是有区别 如果键存在则是修改 如果键不存在则是新增'''
    # 5.删除数据
    # del d1['name'] # 删除键值对
    # print(d1) # {'pwd': 123, 'hobby': [11, 22, 33]}
    # res = d1.pop('pwd') # 弹出数据
    # print(d1) # {'name': 'jason', 'hobby': [11, 22, 33]}
    # print(res) # 123
    # 6.常见三剑客
    print(d1.keys()) # dict_keys(['name', 'pwd', 'hobby']) 一次性获取字典所有的键 结果可以看成是列表 支持for循环
    print(d1.values()) # dict_values(['jason', 123, [11, 22, 33]]) 一次性获取字典所有的值 结果可以看成是列表 支持for循环
    print(d1.items()) # dict_items([('name', 'jason'), ('pwd', 123), ('hobby', [11, 22, 33])]) 一次性获取键值对
    6.元组
    6.1.类型转换
    与列表一致
    6.2.常见操作
    t1 = (11, 22, 33)
    print(type(t1)) # <class 'tuple'>
    t2 = (11)
    print(type(t2)) # <class 'int'>
    t3 = ('hello')
    print(type(t3)) # <class 'str'>
    """
    当元组内只有一个数据值的时候 逗号不能省略
    小建议:以后我们在定义容器类型(内部可以存放多个数据值)的时候 如果只要一个元素 逗号加上
    (11,)
    [11,]
    {'name':'jason',}
    """
    t1 = (11, 22, 33, 44)
    # 1.索引操作
    # 2.统计数据值个数
    # 3.元组内索引绑定值的绑定关系不能改
    # t1[0] = 99 # 报错 索引绑定值的关系不能修改
    """
    笔试题
    t2 = (11, 22, [11, 22])
    t2[-1].append(33)
    上述代码运行完毕后 结果是什么???

    """
    t2 = (11, 22, [11, 22])
    t2[-1].append(33)
    print(t2) # (11, 22, [11, 22, 33])
    7.集合set
    集合内数据值也是无序的!!!
    去重
    集合内不允许出现重复的数据 如果出现会自动去重
    关系运算
    共同好友 共同关注 共同点赞
    f1 = {'jason', 'jerry', 'kevin', 'tony'} # 小明的好友列表
    f2 = {'jack', 'jerry', 'tony', 'lili'} # 小李的好友列表
    # 1.求两个人共同好友
    # print(f1 & f2) # {'tony', 'jerry'}
    # 2.求两个人所有的好友
    # print(f1 | f2) # {'tony', 'lili', 'kevin', 'jack', 'jason', 'jerry'}
    # 3.求独有好友
    # print(f1 - f2) # {'jason', 'kevin'}
    # print(f2 - f1) # {'jack', 'lili'}
    # 4.求两个人各自独有的好友
    # print(f1 ^ f2) # {'jason', 'kevin', 'jack', 'lili'}
    # 5.求子集 父集(谁包含谁)
    print(f1 > f2)
    print(f1 < f2)
    print({1, } < {1, 2, 3, 4, }) # True

  • 相关阅读:
    extend()和append()区别
    extend()和append()区别
    extend()和append()区别
    extend()和append()区别
    Ethtool工具源码剖析
    [数据库基础]——索引
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
  • 原文地址:https://www.cnblogs.com/A121/p/16581045.html
Copyright © 2020-2023  润新知