Python自学教程4-数据类型学什么

news/2024/4/29 12:41:50/文章来源:https://www.cnblogs.com/heniu/p/16620600.html

Hi,我是九柄,全网同号,今天我们说说Python的数据类型。

python数据类型有什么特点

每一门编程语言都要学数据类型的,每种类型的操作会稍微有一点区别。Python是一门非常灵活的编程语言,数据类型的指定和其他编程语言会稍微有一点区别。

首先,Python 不需要显性声明数据的类型,当定义变量的时候,会智能判断变量存储的类型。

name = "jiubing"
age = 19
公号 = "九柄"

其次,在定义变量时,不需要指定一个数据,这样程序才知道它的数据类型。

name    # 错误写法,变量没写数据

Python是强类型的编程语言

你可能经常会听说一门编程语言是强类型还是弱类型,其实你不需要太去深究这个概念,只需要大概知道,强类型语言不能用两个不同类型的数据进行运算就可以了(不是绝对的)。

python 是强类型的,所以运算时,要注意是否同类型。

"jiubing"  + 1    #错误写法
"jiubing" * 3   # 但这个是正确的

数据类型有哪些

Python 里面常用的数据类型有:

  • str 字符串
  • int 整型
  • float 浮点数
  • bool 布尔
  • list 列表
  • dict 字典
  • tuple 元组
  • set 集合
  • NoneType 空类型

每一个数据类型的表示都有一个小小案例,眼熟就够了,后面每种数据类型都会详细讲。

# str
"hello"

int

3

float

3.1

bool

True

list

[1,2,3]

dict

{"name": "mingtian"}

tuple

(1,2)

set

{1,2,3}

NoneType

None

数据类型判断

虽然我们写了这么多数据,但是并不知道在 python 中他们真的数据类型是什么。isinstance() 这个操作可以判断一个数据是否为某个数据类型。 但是 None 不能用这个判断。

# str
print(isinstance("hello", str))

int

print(isinstance(3, int))

float

print(isinstance(3.1, float))

bool

print(isinstance(True, bool))

list

print(isinstance([1,2,3], list))

dict

print(isinstance({"name": "mingtian"}, dict))

tuple

print(isinstance((1,2), tuple))

set

print(isinstance({1,2,3}, set))

NoneType

print(None is None)
True
True
True
True
True
True
True
True
True

有的教程会用 type() 这个操作判断数据类型,但是 isinstance 会更加常用,我个人认为 type 稍微了解就可以了。

数据类型转换

几乎所有的数据类型都是可以转化成字符串的,但是反过来则不一定。数据类型转换需要满足特定的规则。

转化成整型

  # float 转成 int, 去掉小数点print(int(1.7))

bool 转成 int, True 为 1, False 为 0

print(int(True))

str 转成 int, 必须是整数格式

print(int("4"))
1
1
4

转换成浮点数

  # int 转换成 floatprint(float(3))

bool 转换成 float

print(float(True))

str 转成 float, 必须是浮点格式

print(float("4.6"))
3.0
1.0
4.6

转换成布尔类型

  # int 转换成 bool, 0 为 False, 其他为 Trueprint(bool(3))print(bool(0))

float 转换成 bool, 和 int 一样

print(bool(-1.2))

str 转成 bool, "" 为 False, 其他为 True

print(bool(""))
print(bool("ab"))

tuple 转成 bool, 空为 False

list 转成 bool, 空为 False

dict 转成 bool, 空为 False

set 转成 bool, 空为 False

print(bool([]))
True
False
True
False
True
False

转换成列表

一般是容器类型才能相互完成转换。

  # str -> list ,拆分字符print(list("没那么简单"))

dict -> list ,得到所有的 key

print(list({"name": "mingtian"}))
['没', '那', '么', '简', '单']
['name']

转换成字典

首先原类型是一个序列,序列当中的每个元素需要包含两个元素,作为键值对。

  origin = [("name","mingtian"), ("age", "19")]print(dict(origin)){'name': 'mingtian', 'age': '19'}

可变数据类型和不可变类型

每一个数据都会存在电脑内存当中某个位置, 有的数据定义好了之后,可以修改,而有的数据类型则不能被修改。 数据类型可变性直接决定了以后的操作,如果不深入理解,代码经常会出问题。

而现在只需要大概了解,后面再深入讲解。

Python 的可变类型:

  • 列表
  • 字典
  • 集合

Python 的不可变类型:

  • 字符串
  • 整型
  • 浮点数
  • 布尔
  • 元组

数据类型学什么

总体上来说,看到一个数据,能马上能识别它是什么类型就可以了。 随后,就可以根据不同的数据类型执行对应的操作。 必要的时候,还需要对数据类型进行转换。

数据类型中,列表、字典、元组经常会在面试题中出现,在面试之前需要额外留意,我整理的面试八股文中就有很多这样的题。

数据类型还有很多非常详细的操作,尤其是字符串、列表、字典需要使用非常多,需要仔细掌握。

我是九柄,下期见啦。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_2618.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解析 RocketMQ 业务消息--“顺序消息”

本篇将继续业务消息集成的场景,从功能原理、应用案例、最佳实践以及实战等角度介绍 RocketMQ 的顺序消息功能。作者:绍舒 引言 Apache RocketMQ 诞生至今,历经十余年大规模业务稳定性打磨,服务了阿里集团内部业务以及阿里云数以万计的企业客户。作为金融级可靠的业务消息方…

C# 读取MotherBoard的信息

通过C# 来读取PC 的MotherBoard 上的信息,如 产品名称,制造商,版本等,方法如下:Reference中添加 System.Management,并在头文件中引入该 Assemble 添加对应的类,并进行使用,如下实例:public static class MotherBoardInfo{private static ManagementObjectSearcher …

万物皆可集成系列:低代码释放用友U8+深度价值(2)—数据拓展应用

在上一篇内容我们介绍了如何利用低代码开发套件实现低代码应用与U8+系统的对接集成,本次给大家带来的是如何将用友U8+系统中的数据进行价值扩展和实际应用。 我们以生产物料齐套分析为例来说明如何利用低代码将U8+系统中的系统进行扩展和应用。在开始之前,先来看看什么是生产…

java数据类型转换问题

我们知道java中的各个数据类型的取值范围不同,可以理解成容量大小,而针对容量大小可以对他们进行一个由低到高的排序,也就是优先级。 优先级 低-----------------------------------------------------------------------高 (byte,short,char)=> int => long => …

记esxi linux主机调整分区大小

调整前效果:调整后效果: 方法如下: 工具:VMware vCenter Converter

顶象为飞凡汽车App提供全方位防护 助力新能源汽车发展

汽车App集展示、体验、交互、交易和远程服务于一身,已成为智能汽车的一部分。日前,飞凡汽车与顶象达成合作,为飞凡汽车App提供安全加固服务,为用户提供全方位的安全保障。 用户眼里的“宝藏App” 每个智能汽车都有一个App,大多数将其当做车的附加服务,飞凡汽车把App当做汽…

Fecify 跨境电商系统,有哪些优势?

独立站是最近几年重新火爆起来的跨境电商经营方式。人都喜欢一切都掌握在自己手里的感觉,而独立站的好处就是自己说了算,足够自由。因为可以自己说了算,风险自己把控,自己做的事情,自己负责,独立站的这些自主特性深受货代人的喜爱。独立站以其独立自主的特性,引领未来跨…

删除RAID

场景 当服务器不需要RAID或重新配置RAID时,要先删除当前RAID配置来释放硬盘。 LSI SAS2208 (Legacy/Dual) 操作步骤 步骤1 通过远程虚拟控制台登录到服务器的实时操作桌面。 步骤2 登录CU管理界面。 步骤3 备份删除RAID中的数据。 步骤4 删除RAID。 1. 在CU主界面左侧区域中选…

HTML基础(二):标签学习

html学习笔记排版标签 标题标签场景:在新闻和文章的页面中,都离不开标题,用来突出显示文章主题代码:h系列标签<h1>1级标题</h1> <h2>2级标题</h2> <h3>3级标题</h3> <h4>4级标题</h4> <h5>5级标题</h5> <h…

电商行业:全链路监测广告投放效果,用数据驱动业务增长

哪个营销任务、营销渠道的引流用户更多? 买量用户的活跃、留存情况如何? 哪个营销任务引流的用户后续的加购、下单转化最多? HMS Core分析服务作为广告转化跟踪工具,广告主可实现从“曝光、点击、下载、激活、注册、留存、收藏、加入购物车、下单、开始结算、支付成功、复购…

35. Redis---缓存问题

1. 前言 在实际的业务场景中,Redis 一般和其他数据库搭配使用,用来减轻后端数据库的压力,比如和关系型数据库 MySQL 配合使用。Redis 会把 MySQL 中经常被查询的数据缓存起来,比如热点数据,这样当用户来访问的时候,就不需要到 MySQL 中去查询了,而是直接获取 Redis 中的…

面试突击77:Spring 依赖注入有几种?各有什么优缺点?

IoC 和 DI 是 Spring 中最重要的两个概念,其中 IoC(Inversion of Control)为控制反转的思想,而 DI(Dependency Injection)依赖注入为其(IoC)具体实现。那么 DI 实现依赖注入的方式有几种?这些注入方式又有什么不同?接下来,我们一起来看。 0.概述 在 Spring 中实现依…

[AcWing 167] 木棒

DFS 剪枝点击查看代码 #include<bits/stdc++.h>using namespace std;typedef long long LL;const int N = 1e6 + 10;int n; int w[N]; int sum, len; bool st[N];bool dfs(int u, int s, int start) {if (u * len == sum)return true;if (s == len)return dfs(u + 1, 0, …

Word修订内容批量标红

Word修订标红Plus,适用于科研狗最近改文章,期刊要求提供所有修改内容都标红的修订稿,本着能不手改就不手改的原则,我尝试检索了一下自动修改的方法,最先找到的是简书上的一篇使用VB宏命令批量修改的文章 (Word-接受全部修订为标红字体),但是尝试之后发现运行时间很长,且…

《GB27607-2011》PDF下载

《GB27607-2011 机械压力机 安全技术要求》PDF下载 《GB27607-2011》简介本标准规定了机械压力机类产品的设计、制造、改造、使用的术语和定义、严重危险、安全要求和(或)措施、检验和使用信息; 本标准适用于压力机及作为压力机组成部分的辅助设备的设计、制造、改造和使用,也…

二进制位运算

二进制位运算基础及其应用: 一、基本位运算符: 1.& 按位与:(从左到右)二进制中对应位都是1则为1,否则为0; 2. | 按位或:(从左到右)二进制中对应位有一个是1则为1,否则为0; 3. ^按位异或:(从左到右)二进制中对应位相同则为0,不同为1; 4. <<左移:右侧…

《GB27887-2011》PDF下载

《GB27887-2011 机动车儿童乘员用约束系统》PDF下载 《GB27887-2011》简介 本标准规定了机动车儿童乘员用约束系统术语、定义,在车辆上的安装及固定要求,约束系统的结构,以及对约束系统总成及其组成部件的性能要求和试验方法;本标准适用于适合安装在三个车轮或三个车轮以上…

JS基础:数组、函数、对象

字符串要用英文双引号括起来。字符串与其他类型数据之间用加号+连接起来 // -------------------------------------------------------- JS中定义声明变量是用关键字var,JS中变量名函数名都可以用中文。 JS中定义数组不用写函数长度[],JS中可以定义字符串数组向数组添加新元…

《GB12523-2011》PDF下载

《GB12523-2011 建筑施工场界环境噪声排放标准》PDF下载 《GB12523-2011》简介本标准规定了建筑施工场界环境噪声排放限值及测定方法; 本标准适用于周围有噪声敏感建筑物的建筑施工噪声排放的管理、评价及控制。市政、通信、交通、水利等其他类型的施工噪声排放可参照本标准执…

CATIA——什么是汽车设计硬点和骨架?

什么是汽车设计「硬点」? 汽车设计硬点(Hard point)的概念: 所谓硬点,是通过英文的"hardpoint"直译过来的。 由于零部件设计要在整车总布置基本完成后才开始,在总布置设计阶段中往往没有零部件的详细资料,还不能解决零部件和总成内部的细节问题。所以在布置设…