数据类型

Posted randysun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据类型相关的知识,希望对你有一定的参考价值。

数据类型

首先回顾变量是什么:变量用来记录世界的状态。创建计算机的目的就是想要让计算机和人一样能够识别世间万物,既然计算机能够识别世间万物。那么我们来想想怎么让计算机来认识我呢?

我们不讲计算机怎么认识我,我们聊聊你是怎么认识我的?如果是你,你是不是会通过我的名字、年龄、身高、性别和爱好认识我。那么可想而知计算机也可以这样认识我。那么如果用计算机中的变量去记录我的这些状态,我的年龄可以用19去记录,但是我的姓名可以使用数字去记录吗?我的爱好可以用数字去记录吗?如果你说你年龄的时候,你又会用18.5岁去形容你的年龄吗?可想而知,你是不会这样做的。

通过上面一大段的陈述,其实可以明白数据类型指的就是变量值的不同类型,姓名可能是一种数据类型、年龄可能是一种数据类型、爱好可能又是另一种数据类型,至于是什么数据类型我们将在下一章详细说明。

变量的是用来反映状态以及状态变化的,毫无疑问针对不同的状态就应该用不同类型的数据去标识。

一、数据类型分类

  • 数字类型: int, float

  • 字符串: str

  • 列表: list

  • 字典: dict

  • 布尔值: bool

二、数字类型

2.1 整型(int)

  • 作用 : 表示人的年龄、各种号码、工作时间,表示整数范围

  • 定义:

    age = 18  # age=int(18)
    
    print(id(age))
    print(type(age))
    print(age)

    4530100848
    <class ‘int‘>
    18

    • 使用:加减乘除、逻辑判断(大于、小于)

    2.2 浮点型(float)

    • 作用:表示身高、体重、薪资,表示小数范围

    • 定义:

      salary = 2.1  # salary=float(2.1)
      
      print(id(salary))
      print(type(salary))
      print(salary)
    • 如何使用:加减乘除、逻辑判断(大于、小于)

三、字符串类型

#### 3.1 定义字符串

字符串相当于一根羊肉串。而字符串就是一串被串起来的字符,在单引号、双引号或三引号内包裹的一串字符。需要注意的是:三引号内的字符可以换行,而单双引号内的字符不行。

  • 作用:表示姓名、爱好、性别等,表示字符相关

  • 定义: 把字符串连接在一起,单引号,双引号,三引号

    s = “Hello Word”
    s = str(10)
    word = 'xiao_gang_pao 说了一句话:"万般皆下品惟有读书高"'

    ## 三引号可以换行
    word3 = ‘‘‘
    xiao_gang_pao‘ 说了一句话:"万般皆下品惟有读书高"
    可以换行
    ‘‘‘
    word3[0:4]) # 顾头不顾尾
    ```

3.2 使用

1.字符串只能+、*和逻辑比较(不同的数据类型不能进行相加)
2.字符串的+,实际上就是拼接两个字符串,即重新申请一个小空间把两个字符串都拷贝一份后再拼接
3.字符串的乘法只能乘以数字
4.字符串比较大小,是按照字母的顺序在进行ASCII码比较(字符串比较是字符的顺序)
5.如果字符串内有引号,则包裹字符串的引号和字符串内部的引号不能相同

6.支持采用切片获取字符串中的值

四、 列表

  • 作用:用于存放多个值,如爱好,小女友
  • 定义:s_list = [‘read’, ‘run’, ‘money’], s_list = list([‘read’, ‘run’, ‘money’])
  • 使用方法:可以通过索引取值:s_list[索引],或切片的方式

五、字典

  • 作用:{}内以逗号隔开 键值对,用于存放多个键值对,按照key: valued 的方式存放值(key(描述意义,一般使用字符串类型,不能使用列表和字典):value(值,任意数据类型))
  • 定义:user_dict = {‘name’:‘randy’, ‘age’:18, ‘height’: 185}, user_dict=dict({‘name’:‘randy’, ‘age’:18, ‘height’: 185})
  • 使用方法:通过字典中的key获取对应的值,user_dict[key] 或.get方法

六、布尔型

  • 作用:用于判断条件结果,一般只作为条件出现
  • 定义:flag_true = True, flag_false = bool(False)使用:flag_true == flag_false
  • 使用:flag_true == flag_false
  • 注:python中除了0/None/空(空字符/空列表/空字典)/False之外所有数据类型都自带布尔值为True

七、总结

  1. 数据类型:世间万物存在各种状态,需要通过不同的形式记录,方便计算机记忆和处理管理数据;
  2. 数字类型:int, float,描述数字相关;
  3. 字符串类型:str,描述字符相关;
  4. 列表类型:list,描述多种状态集合;
  5. 字典类型:dict, 描述键值对数据;
  6. 布尔类型:bool,作为条件判断使用

以上是关于数据类型的主要内容,如果未能解决你的问题,请参考以下文章

对“xxx”类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃损坏和数据丢失。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用它们。 错误解决一例。(代码片段

视图或片段库为常见数据类型组成 UI

一个具有两种显示类型的片段[关闭]

(转) Java中的负数及基本类型的转型详解

从 Apollo 缓存中读取特定类型的所有片段

Android 上的 Kotlin:如何在片段中使用数据库中的 LiveData?