博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python基础之五种常用数据类型
阅读量:4325 次
发布时间:2019-06-06

本文共 3661 字,大约阅读时间需要 12 分钟。

数据类型基础

一、什么是数据类型

其实可以明白数据类型指的就是变量值的不同类型,姓名可能是一种数据类型、年龄可能是一种数据类型、爱好可能又是另一种数据类型

二、为何对数据分类

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

三、不同数据类型

[数字类型]

[字符串类型]

[列表类型]

[字典类型]

[布尔类型]

数字类型

整型(int)

1.1 作用

表示人的年龄、各种号码、级别

1.2 定义

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

4530100848

<class 'int'>
18

1.3 如何用

加减乘除、逻辑判断(大于、小于)

浮点型(float)

2.1 作用

表示身高、体重、薪资

2.2 定义

salary = 2.1  # salary=float(2.1)print(id(salary))print(type(salary))print(salary)

4569240656

<class 'float'>
2.1

2.3 如何用

加减乘除、逻辑判断(大于、小于)

字符串类型

1.1 作用

表示名字、爱好

1.2定义方式

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

name1 = 'nick'

name2 = "egon"或

name3 = """nick

egon"""

1.3使用方法:

字符串只能+、*和逻辑比较

字符串的拼接,即重新申请一个小空间把两个字符串都拷贝一份后再拼接。而不是你YY的把一个小空间内的变量值复制到另一个变量的小空间内,然后拼接

注意:

1、如果字符串内有引号,则包裹字符串的引号和字符串内部的引号不能相同。

2、字符串的乘法只能乘以数字。

3、字符串比较大小,按照ASCII码比较,以后会细讲。

4、字符串的比较是字母的顺序。

列表类型(list)

1.1作用

存放多个值,如多个女朋友、多个爱好。

1.2 定义

在[]内用逗号分隔开任意类型的值。

hobby = 'read'hobby_list = [hobby, 'run', 'girl']print(id(hobby_list))print(type(hobby_list))print(hobby_list)

4558605960

<class 'list'>
['read', 'run', 'girl']

1.3 如何用

存不是目的,取才是目的,我们介绍列表索引取值的方法,牢记索引序号从0开始。

hobby_list = ['read', 'run', 'girl']# 索引序号      0       1      2# 取出第二个爱好print(hobby_list[1])

run

hobby_list = ['read', 'run', ['girl_name', 18, 'shanghai']]# 取出girl的年龄print(hobby_list[2][1])

18

字典(dict)

1.1作用

用来存取多个值,按照key:value的方式存值,取的时候可以通过key而非索引去取值,key对value具有描述性的作用。存放数据的种类各种各样并且数据较多的时候可以使用字典。

1.2 定义

在{}内用逗号分隔开多个元素,每一个元素都是key: value的格式,其中value是任意格式的数据类型,key由于具有描述性的作用,所以key通常是字符串类型。

1.3如何用

字典取值方式不再依赖于索引,而是依赖于key,通过[key]即可获取key对应的value值。

# 字典套列表user_info = {'name': 'nick', 'gender': 'male', 'age': 19,             'company_info': ['oldboy', 'shanghai', 50]}print(user_info['name'])print(user_info['company_info'][0])

nick

oldboy

# 字典套字典user_info = {'name': 'nick', 'gender': 'male', 'age': 19, 'company_info': {    'c_name': 'oldboy', 'c_addr': 'shanghai', 'c_num_of_employee': 50}}print(user_info['name'])print(user_info['company_info']['c_name'])

nick

oldboy

布尔类型

1.1作用

用于判断条件结果

1.2定义

True、False通常情况不会直接引用,需要使用逻辑运算得到结果。

1.3 如何用

print(bool(0))print(bool('nick'))print(bool(1 > 2))print(bool(1 == 1))FalseTrueFalseTrue

$\color{red}{注意}$:Python中所有数据类型的值自带布尔值。如此多的数据类型中只需要记住只有0、None、空、False的布尔值为False,其余的为True。

print(bool(0))print(bool(None))print(bool(''))print(bool([]))print(bool({}))print(bool(False))

False

False
False
False
False
False

解压缩

如果我们给出一个列表,我们需要一次性取出多个值,我们是不是可以用下面的方式实现呢?

name_list = ['nick', 'egon', 'jason']x = name_list[0]y = name_list[1]z = name_list[2]print(f'x:{x}, y:{y}, z:{z}')

x:nick, y:egon, z:jason

讲真,上面的方法真的是谁用谁知道,我们可以试一试解压缩。

解压缩可以这样理解:超市打包是把多个商品放在一起,解压缩其实就是解包把多个商品一次性拿出来。

name_list = ['nick', 'egon', 'jason', ]x, y, z = name_listprint(f'x:{x}, y:{y}, z:{z}')

x:nick, y:egon, z:jason

有时候我们解压缩的值可能是我们不想要的,那么可以使用下划线,万能的下划线。

name_list = ['nick', 'egon', 'jason', 'tank']x, y, z, a = name_listx, _, z, _ = name_list  # _相当于告诉计算机不要了,不能以_开头和结尾
name_list = ['nick', 'egon', 'jason', 'tank', 'kevin', 'jerry']x, y, _, _, _, z = name_listx, y, *_, z = name_list

写程序不是用来装逼的,关键是创造价值。python追求的是简洁性,代码不要写的太长了。因此字典也是可以的,但是字典解压缩的是key。

info = {'name': 'nick', 'age': 18}x, y = infoprint(x, y)

name age

Python与用户的交互

一、为什么交互

让我们来回顾计算机的发明有何意义,计算机的发明是为了奴役计算机,解放劳动力。假设我们现在写了一个ATM系统取代了柜员,如果我们要在这台ATM上取款,那么这个ATM是不是会要求我们输入姓名、密码?是不是需要我们输入我们需要取款金额?这是不是就可以理解为一种交互。现在让我们了解下Python是怎么实现交互的。

二、如何交互

name = input('请输入你的姓名:')pwd = input('请输入你的密码:')print(type(name))print(type(pwd))

请输入你的姓名:nick

请输入你的密码:123
<class 'str'>
<class 'str'>

通过上面的打印结果,我们可以发现input()方法的作用只是接收值。由于我们目前基础知识不够,我们暂时使用input()交互,之后会使用Web/可视化界面的形式交互。

$\color{red}{注意:无论我们输入的值是数字类型、字符串类型、列表类型,input的接收值都是字符串类型。}$

转载于:https://www.cnblogs.com/qwksjy/p/11270809.html

你可能感兴趣的文章
在mvc3中使用ffmpeg对上传视频进行截图和转换格式
查看>>
python的字符串内建函数
查看>>
Spring - DI
查看>>
微软自己的官网介绍 SSL 参数相关
查看>>
Composite UI Application Block (CAB) 概念和术语
查看>>
64位MATLAB和C混合编程以及联合调试
查看>>
原生js大总结二
查看>>
PHP基础
查看>>
UVa 11488 超级前缀集合(Trie的应用)
查看>>
Django 翻译与 LANGUAGE_CODE
查看>>
[转]iOS教程:SQLite的创建数据库,表,插入查看数据
查看>>
【转载】OmniGraffle (一)从工具栏开始
查看>>
初识ionic
查看>>
java 中打印调用栈
查看>>
开发 笔记
查看>>
数据挖掘算法比赛 - 简单经验总结
查看>>
生成商户订单号/退款单号
查看>>
使用Android OpenGL ES 2.0绘图之六:响应触摸事件
查看>>
我们过去几年做对了哪些事
查看>>
ubuntu 16.04LTS
查看>>