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

    数据类型

    int, float, bool, str, list, tuple, complex

    序列

    str, list, tuple

    str, tuple 不可变

    列表

    Python 的数组是 list 列表。

    一个列表中可以由不同类型的值。

    列表也可以用 [0:2] 的格式截取。

    列表也可以有相加和相乘操作,只可以和数字相乘

    ['1','2'] + ['3']
     = ['1','2','3']
     
     [1,2] * 2
     = [1,2,1,2]
    

    元组

    (1,2,3)
    

    元组也有 [0:3], 相加相乘操作,可以有不同类型的值。

    type((1,2,3))
    < class 'tuple'>
    
    type((1))
    < class 'int' >
    

    () 在 Python 中也可以表示运算优先级,只有一个元素时,默认为数学运算,所以 (1) 是一个数字。

    type((1,))  // 只有一个元素
    <class 'tuple'>
    
    type(())    // 没有元素的空元组
    <class 'tuple'>
    

    序列

    'hello world !'[0:8:2]
    // 可以由三个值
    

    判断元素是否在序列中:

    3 in [1,2,3,4,5]
     // True
    3 net in [1,2,3,4,5]
     // False
    
    // 求序列长度
    len([1,2,3]) // 3
    
    // 求序列中最大数
    max([1,2,3,4,5]) // 5
    max('hello world!') // w
    
    // 求最小
    min([1,2,3]) // 1
    min('HelloWorld') // d
    
    // ord 获取字符的 ASCLL 码
    ord('a') // 97
    

    集合: set

    集合是无序的。

    {1,2,3,4,5,6} // set
    

    集合不可以通过 [0] 下标获取元素值,因为他是无序的。

    集合是不重复的

    {1,2,3,4,1,2,3,4}
    = {1,2,3,4}
    
    1 in {1,2,3} // True
    
    1 not in {1,2,3} // False
    
    

    集合的操作

    // 将集合中元素剔除; 求差集
    {1,2,3,4,5,6} - {3,4}
     = {1,2,5,6}
     
    // 求交集
    {1,2,3,4,5} & {3,4,5,6,7,8}
     = {3,4,5}
     
    // 求并集
    {1,2,3,4} | {3,4,5,6}
     = {1,2,3,4,5,6}
    

    如何定义一个空的集合

    type({})  // 字典
    <class 'dict'>
    
    type(set()) // 空的集合
    <class 'set'>
    len(set()) // 0
    

    字典:dict

    字典是无序的,不是序列。有 key 和 value

    {
        key1: value1,
        key2: value2
    }
    

    字典通过 key 来访问 value

    {'Q','新月','W':'苍白','E':'降临','R','月神'}['Q']
    ='新月'
    

    字典不可以有重复的键,字典的键可以不是字符串。

    '1' 和 1 不是同一个键

    字典的值还可以是一个字典。

    字典的 key 必须是一个不可变的类型。比如 int, str

    元组可以做字典的 key

    {
        (1,2): 123,
        2: 12
    }[(1,2)]
    // 123
    

    空的字典

    type({}) // 空字典
    <class 'dict'>
    
    大家好,我是冬冬杨~
  • 相关阅读:
    Kafka sender消息生产者
    springboot--websocket简单demo(一):session chat
    IDE引入mindmap插件,在项目中添加思维导图
    Redis启动命令
    Failure to find com.oracle:ojdbc6:jar:11.2.0.1.0
    Java秒杀系统实战系列~构建SpringBoot多模块项目
    利用java多线程技术往Elasticsearch导入千亿级数据
    list遍历陷阱分析原理
    Storm框架最显著的应用
    Apache Storm Trident
  • 原文地址:https://www.cnblogs.com/dongyangblog/p/9860600.html
Copyright © 2011-2022 走看看