当前位置: 首页 > news >正文

Python入门第三课——Python 数据类型(详细)

文章回顾

  • Python入门第一课——Python起步安装、Sublime Text安装教程,环境配置
  • Python入门第二课——Python的变量和简单数据类型

    目录

    • 文章回顾
    • 前言
    • 一、Python的详细数据类型
    • 二、各种数据类型和使用方法
      • 1.Number(数字)
      • 2、String(字符串)
      • 3、List(列表)
      • 4、Tuple(元组)
      • 5、Sets(集合)
      • 6、Dictionary(字典)
    • 总结

前言

Python的变量赋值中,不需要声明数据类型,变量在赋值后自动声明的数据类型。在上节了解完了简单的Python变量和数据类型后,下面将进入详细的数据类型学习,其数据类型跟Java、C语言等有雷同的地方,但个人觉得,Python的数据类型更为丰富,本节的基于Python 3.X


一、Python的详细数据类型

Python3 中有六个标准的数据类型:Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Sets(集合)、Dictionary(字典)

Python3 的六个标准数据类型中:
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组)
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)

二、各种数据类型和使用方法

1.Number(数字)

Python 主要支持三种不同的数值类型:(常用)

  1. 整型(Int)

通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。

# 整型int
num1 = 1
num2 = 10
num3 = -300000
  1. 浮点型(float)

浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)

#  浮点型 float
f1 = 1.01
f2 = 25.10
f3 = 2.5e2
  1. 复数( (complex))

复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。

# 复数( (complex))
c1 = complex(1,2)
c2 = 3+4j

2、String(字符串)

创建字符串可以使用单引号、双引号、三单引号和三双引号,其中三引号可以多行定义字符串,Python 不支持单字符类型,单字符也在Python也是作为一个字符串使用。

# 以下是一些字符串
str1 = 'string1'
str2 = "string2"
str3 = '''string3'''
str4 = """string4"""

3、List(列表)

类似 Java List 集合接口

列表是写在方括号 [] 之间、用逗号分隔开的元素列表,列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套),列表中的元素是可以改变。

# 列表
list1 = ['Pin','dog','cat','lion']
print(list1[0])  # 输出:'Pin'list1.append('monse') #添加元素
print(list1)
# 输出:['Pin','dog','cat','lion','monse']# 删除元素
list1.remove('Pin')
print(list1)
# 输出:['dog','cat','lion','monse']

4、Tuple(元组)

元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开,组中的元素类型也可以不相同。

# 元组
letters = ('a','b','c','d','e','f','g')
# 切片
print(letters[0])  # 输出 'a'
print(letters[0:3])  # 输出一组 ('a', 'b', 'c')

5、Sets(集合)

类似 Java Set 集合接口

集合(set)是一个无序不重复元素的序列,使用大括号 {} 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 {} ,因为 {} 是用来创建一个空字典

集合不能被切片也不能被索引,除了做集合运算之外,集合元素可以被添加还有删除

# 集合
a_set = {1,2,3,4}
# 添加
a_set.add(5)
print(a_set)  # 输出:{1, 2, 3, 4, 5}
# 删除
a_set.discard(5)
print(a_set)  # 输出:{1, 2, 3, 4}

6、Dictionary(字典)

类似 Java Map 集合接口

字典是一种映射类型,它的元素是键值对,字典的关键字必须为不可变类型,且不能重复。创建空字典使用 {} 。

# 字典
dis = {'BIDU':'Baidu','SINA':'Sina','YOKU':'Youku'}
print(dis)
# 输出{'BIDU': 'Baidu', 'SINA': 'Sina','YOKU': 'Youku',}
print (dis['SINA'])   # 输出键为 'SINA' 的值
print (dis.keys())   # 输出所有键
print (dis.values()) # 输出所有值
print (len(dis))  # 输出字段长度

总结

本节给大家介绍了 Python 六种标准的数据类型,给大家演示了变量的使用,以及六种标准的数据类型的常用操作。

更详细的Python入门学习可以参考:Python菜鸟教程


路漫漫其修远兮,吾将上下而求索 点个关注,学习不迷路!

相关文章:

Python入门第三课——Python 数据类型(详细)

文章回顾 Python入门第一课——Python起步安装、Sublime Text安装教程,环境配置Python入门第二课——Python的变量和简单数据类型 目录 文章回顾前言一、Python的详细数据类型二、各种数据类型和使用方法1.Number(数字)2、String&#xff08…...

html入门

<!DOCTYPE html><!--每个文件都要加上这个&#xff0c;是html文件的主题--> <html><!--查不多就是c预言的main函数&#xff0c;从头括到尾部--><head><meta http-equiv"Content-Type" content"text/html;charsetutf-8" /…...

蓝桥杯杨辉三角

PREV-282 杨辉三角形【第十二届】【蓝桥杯省赛】【B组】 &#xff08;二分查找 递推&#xff09;&#xff1a; 解析&#xff1a; 1.杨辉三角具有对称性&#xff1a; 2.杨辉三角具有一定规律 通过观察发现&#xff0c;第一次出现的地方一定在左部靠右的位置&#xff0c;所以从…...

【活动】开源与闭源大模型:探索未来趋势的双轨道路

&#x1f308;个人主页: 鑫宝Code &#x1f525;热门专栏: 闲话杂谈&#xff5c; 炫酷HTML | JavaScript基础 ​&#x1f4ab;个人格言: "如无必要&#xff0c;勿增实体" 文章目录 开源与闭源大模型&#xff1a;探索未来趋势的双轨道路引言一、开源大模型&#…...

虚拟局域网(VLAN)

关键词&#xff1a;veth、vlan、bridge、iptables、nat、tcpdump、icmp、cidr、arp、路由表、计算机网络协议栈 前言 在过去的几十年里&#xff0c;互联网发展得非常快。许多新兴技术迅速崛起&#xff0c;也有不少曾经的主流技术被淘汰。然而&#xff0c;有些技术因为其基础性…...

内网穿透--Frp-简易型(速成)-上线

免责声明:本文仅做技术交流与学习... 目录 frp项目介绍: 一图通解: ​编辑 1-下载frp 2-服务端(server)开启frp口 3-kali客户端(client)连接frp服务器 4-kali生成马子 5-kali监听 6-马子执行-->成功上线 frp项目介绍: GitHub - fatedier/frp: A fast reverse proxy…...

Python库之Scrapy的简介、安装、使用方法详细攻略

Python库之Scrapy的简介、安装、使用方法详细攻略 简介 Scrapy是一个快速的、高层次的web抓取和web抓取框架&#xff0c;用于抓取网站数据并从页面中提取结构化的数据。Scrapy用途广泛&#xff0c;可以用于数据挖掘、信息处理或存储历史数据&#xff0c;以及各种其他用途。 …...

k8s配置pods滚动发布

背景 采用微服务架构部署的应用&#xff0c;部署方式都要用到容器化部署k8s容器编排&#xff0c;最近我在公司负载的系统也是用的上述架构部署&#xff0c;但是随着系统的运行&#xff0c;用户提的需求就会越多&#xff0c;每次更新的话都要停机发布&#xff0c;最用户侧来说就…...

C++vector的简单模拟实现

文章目录 目录 文章目录 前言 一、vector使用时的注意事项 1.typedef的类型 2.vector不是string 3.vector 4.算法sort 二、vector的实现 1.通过源码进行猜测vector的结构 2.初步vector的构建 2.1 成员变量 2.2成员函数 2.2.1尾插和扩容 2.2.2operator[] 2.2.3 迭代器 2…...

AWTK实现汽车仪表Cluster/DashBoard嵌入式GUI开发(七):快启

前言: 汽车仪表是人们了解汽车状况的窗口,而仪表中的大部分信息都是以指示灯形式显示给驾驶者。仪表指示灯图案都较为抽象,对驾驶不熟悉的人在理解仪表指示灯含义方面存在不同程度的困难,尤其对于驾驶新手,如果对指示灯的含义不求甚解,有可能影响驾驶的安全性。即使是对…...

基于springboot+vue的招聘信息管理系统

开发语言&#xff1a;Java框架&#xff1a;springbootJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;…...

使用STM32F103标准库实现自定义键盘

使用STM32F103标准库实现自定义键盘 在嵌入式系统中&#xff0c;自定义键盘的实现是一个经典的项目&#xff0c;能够帮助我们深入理解GPIO配置、按键扫描和中断处理等知识。本文将详细介绍如何使用STM32F103标准库来实现一个简单的自定义键盘。 1. 准备工作 1.1 硬件准备 S…...

面试八股之JVM篇3.5——垃圾回收——G1垃圾回收器

&#x1f308;hello&#xff0c;你好鸭&#xff0c;我是Ethan&#xff0c;一名不断学习的码农&#xff0c;很高兴你能来阅读。 ✔️目前博客主要更新Java系列、项目案例、计算机必学四件套等。 &#x1f3c3;人生之义&#xff0c;在于追求&#xff0c;不在成败&#xff0c;勤通…...

解决LabVIEW通过OPC Server读取PLC地址时的错误180121602

在使用LabVIEW通过OPC Server读取PLC地址时&#xff0c;若遇到错误代码180121602&#xff0c;建议检查网络连接、OPC Server和PLC配置、用户权限及LabVIEW设置。确保网络畅通&#xff0c;正确配置OPC变量&#xff0c;取消缓冲设置以实时读取数据&#xff0c;并使用诊断工具验证…...

npm,yarn,cnpm,tyarn,pnpm 安使用装配置镜像

npm 安装 安装node后就可以使用了 官方默认地址 npm config set registry https://registry.npmjs.org 镜像 npm config set registry https://registry.npm.taobao.org npm config set registry http://registry.npmmirror.org全局安装依赖 npm install -g <包名&g…...

使用python将一段文本写入一个txt文件中且先格式化文件名

有一段文本内容&#xff0c;有“标题”和“内容”组成。 任务&#xff1a;要将这段文本&#xff0c;存放到一个txt文件中&#xff0c;文件名为当天的日期加上“标题”内容。因为“标题”内可能有/<>之类的&#xff0c;还需要格式化一下。 已经将上述功能都写成了函数&a…...

前端 CSS 经典:元素倒影

前言&#xff1a;好看的元素倒影&#xff0c;可以通过-webkit-box-reflect 实现。但有兼容问题&#xff0c;必须是 webkit 内核的浏览器&#xff0c;不然没效果。但是好看啊。 效果图&#xff1a; 代码实现&#xff1a; <!DOCTYPE html> <html lang"en"&g…...

ROS学习记录:用C++实现IMU航向锁定

前言 获取IMU数据的C节点 在了解了如何获取到IMU的姿态信息&#xff08;链接在上面&#xff09;后&#xff0c;接下来尝试实现让一个节点在订阅IMU数据的时候&#xff0c;还能发布运动控制指令&#xff0c;使机器人能对姿态变化做出反应&#xff0c;达到一个航向锁定的效果。 …...

设计模式-策略模式-使用

设计模式-策略模式-CSDN博客 系统中有很多类&#xff0c;它们之间的区别仅在于它们的行为。策略模式可以定义一系列的算法&#xff0c;并将它们一个个封装起来&#xff0c;使它们可以相互替换。这样&#xff0c;算法就可以独立于使用它的客户而变化。需要使用算法的不同变体。…...

WebSocket——相关介绍以及后端配置

一、WebSocket介绍&#xff1a; WebSocket是一种在单个TCP连接上进行全双工通信的协议&#xff0c;旨在改进客户端和服务器之间的实时通信。以下是关于WebSocket的详细介绍&#xff1a; 1、定义与标准 WebSocket是独立的、创建在TCP上的协议&#xff0c;通过HTTP/1.1协议的10…...

VB.net复制Ntag213卡写入UID

本示例使用的发卡器&#xff1a;https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

练习(含atoi的模拟实现,自定义类型等练习)

一、结构体大小的计算及位段 &#xff08;结构体大小计算及位段 详解请看&#xff1a;自定义类型&#xff1a;结构体进阶-CSDN博客&#xff09; 1.在32位系统环境&#xff0c;编译选项为4字节对齐&#xff0c;那么sizeof(A)和sizeof(B)是多少&#xff1f; #pragma pack(4)st…...

CentOS下的分布式内存计算Spark环境部署

一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架&#xff0c;相比 MapReduce 具有以下核心优势&#xff1a; 内存计算&#xff1a;数据可常驻内存&#xff0c;迭代计算性能提升 10-100 倍&#xff08;文档段落&#xff1a;3-79…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库&#xff0c;获取股票数据&#xff0c;并生成TabPFN这个模型 可以识别、处理的格式&#xff0c;写一个完整的预处理示例&#xff0c;并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务&#xff0c;进行预测并输…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

代理篇12|深入理解 Vite中的Proxy接口代理配置

在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

LLMs 系列实操科普(1)

写在前面&#xff1a; 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容&#xff0c;原视频时长 ~130 分钟&#xff0c;以实操演示主流的一些 LLMs 的使用&#xff0c;由于涉及到实操&#xff0c;实际上并不适合以文字整理&#xff0c;但还是决定尽量整理一份笔…...

学习一下用鸿蒙​​DevEco Studio HarmonyOS5实现百度地图

在鸿蒙&#xff08;HarmonyOS5&#xff09;中集成百度地图&#xff0c;可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API&#xff0c;可以构建跨设备的定位、导航和地图展示功能。 ​​1. 鸿蒙环境准备​​ ​​开发工具​​&#xff1a;下载安装 ​​De…...

boost::filesystem::path文件路径使用详解和示例

boost::filesystem::path 是 Boost 库中用于跨平台操作文件路径的类&#xff0c;封装了路径的拼接、分割、提取、判断等常用功能。下面是对它的使用详解&#xff0c;包括常用接口与完整示例。 1. 引入头文件与命名空间 #include <boost/filesystem.hpp> namespace fs b…...

CSS 工具对比:UnoCSS vs Tailwind CSS,谁是你的菜?

在现代前端开发中&#xff0c;Utility-First (功能优先) CSS 框架已经成为主流。其中&#xff0c;Tailwind CSS 无疑是市场的领导者和标杆。然而&#xff0c;一个名为 UnoCSS 的新星正以其惊人的性能和极致的灵活性迅速崛起。 这篇文章将深入探讨这两款工具的核心理念、技术差…...