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

篇章二 | Python 入门指南:深入理解基础数据类型

        Python 是一门强大而易学的编程语言,而深刻理解其基础数据类型是掌握 Python 编程的重要一步。本入门指南将详细介绍 Python 中的基础数据类型,包括整数、浮点数、字符串、布尔值、列表、元组、字典和集合等,同时提供注意事项和与 C 语言的区别。

1. 整数(int)

整数在 Python 中是简单直观的,可以是正数、负数或零。在进行整数运算时,Python 会自动处理溢出问题,因此你无需担心数值越界。

# 整数示例
num1 = 42
num2 = -17
num3 = 0
print(num1, num2, num3)  # 输出: 42 -17 0

注意事项:

  • Python 中整数的表示没有范围限制,可以表示任意大的整数。
  • 在 Python 3 中,整数除法会得到浮点数结果,如果需要整数结果,可以使用 // 操作符。

与 C 语言的区别:

  • Python 中整数没有溢出问题,而 C 语言需要注意整数溢出的情况。

2. 浮点数(float)

浮点数用于表示带有小数部分的数字。Python 使用浮点数进行数学运算时会自动进行类型转换。然而,浮点数运算可能引起精度问题,需要谨慎处理。

# 浮点数示例
pi = 3.14
height = 5.9
print(pi, height)  # 输出: 3.14 5.9

与 C 语言的区别:

  • Python 中的浮点数运算更灵活,并且不需要显式地指定浮点数类型。

3. 字符串(str)

字符串是由字符组成的不可变序列,可以使用单引号或双引号定义。字符串在 Python 中支持丰富的操作,但需要注意字符串是不可变的特性。

# 字符串示例
message1 = 'Hello, World!'
message2 = "Python 是一门强大的语言。"
print(message1)  # 输出: Hello, World!
print(message2)  # 输出: Python 是一门强大的语言。

注意事项:

  • 字符串可以通过索引访问单个字符,索引从0开始。
  • 字符串支持切片操作,可以获取子字符串。
  • 字符串是不可变的,无法通过索引直接修改其中的字符。
  • 字符串定义可以使用单引号或双引号,但一般保持一致性。

与 C 语言的区别:

  • Python 中的字符串更为灵活,不需要预先指定字符串的大小,并且支持丰富的字符串操作。

4. 布尔值(bool)

布尔值表示真或假,常用于条件判断。布尔值在 Python 中是关键字 TrueFalse

# 布尔值示例
is_true = True
is_false = False
print(is_true, is_false)  # 输出: True False

注意事项:

  • 布尔值用于控制程序的流程,是条件语句的基础。
  • 布尔值可以用于逻辑运算,如与(and)、或(or)、非(not)。

与 C 语言的区别:

  • Python 中的布尔值是关键字 TrueFalse,而 C 语言中通常使用整数表示布尔值,0 表示假,非零表示真。

5. 列表(list)

列表是一种有序、可变的数据类型,可以容纳任意类型的元素。列表使用方括号 [] 定义,元素之间用逗号分隔。

# 列表示例
fruits = ['apple', 'banana', 'orange']
numbers = [1, 2, 3, 4, 5]
print(fruits, numbers)  # 输出: ['apple', 'banana', 'orange'] [1, 2, 3, 4, 5]

注意事项:

  • 列表是可变的,可以通过索引修改、添加或删除元素。
  • 列表支持切片操作,可以获取子列表。
  • 列表可以包含不同类型的元素。

与 C 语言的区别:

  • Python 中的列表更为灵活,不需要预先指定列表的大小,并且可以容纳不同类型的元素。

6. 元组(tuple)

元组是一种不可变的有序序列,用于存储多个元素。元组使用圆括号 () 定义,元素之间用逗号分隔。

# 元组示例
my_tuple = (1, 2, 'apple', 3.14)
print(my_tuple)  # 输出: (1, 2, 'apple', 3.14)

注意事项:

  • 元组是不可变的,一旦创建就不能被修改。
  • 元组可以包含不同类型的元素。
  • 元组支持切片操作,可以获取子元组。

7. 字典(dict)

字典是一种键-值对的集合,用于存储和访问数据。字典使用花括号 {} 定义,每个键值对之间用逗号分隔。

# 字典示例
person = {'name': 'Alice', 'age': 30, 'city': 'Wonderland'}
print(person)  # 输出: {'name': 'Alice', 'age': 30, 'city': 'Wonderland'}

注意事项:

  • 字典中的键必须是唯一的。
  • 字典的键可以是不可变类型,如整数、字符串、元组等,但不能是可变类型,如列表。
  • 字典是无序的,不支持索引,需要通过键访问值。
  • 字典是可变的,可以添加、修改或删除键值对。

与 C 语言的区别:

  • Python 中的字典是一种高级的数据结构,C 语言中通常需要手动实现类似的映射结构。

8. 集合(set)

集合是一种无序的、可变的数据类型,用于存储不重复的元素。集合使用花括号 {} 定义,元素之间用逗号分隔。集合自动去除重复的元素。

# 集合示例
my_set = {1, 2, 'apple', 3.14}
print(my_set)  # 输出: {1, 2, 'apple', 3.14}

注意事项:

  • 集合中的元素是无序的,无法通过索引访问。
  • 集合中不能包含重复的元素。
  • 集合是可变的,可以添加或删除元素。

通过深入理解这些基础数据类型,你将能够更灵活地处理数据,并为更高级的编程概念打下坚实的基础。在你的 Python 学习旅程中,不断实践并构建小项目将有助于加深对这些概念的理解。希望你在 Python 编程的世界中取得愉快而有成效的学习经验! 🚀🐍

相关文章:

篇章二 | Python 入门指南:深入理解基础数据类型

Python 是一门强大而易学的编程语言,而深刻理解其基础数据类型是掌握 Python 编程的重要一步。本入门指南将详细介绍 Python 中的基础数据类型,包括整数、浮点数、字符串、布尔值、列表、元组、字典和集合等,同时提供注意事项和与 C 语言的区…...

循环冗余效验码的计算方法

循环冗余效验码的计算方法 G(x): 在了解计算方法之前我们首先要明白G(x)表明的意思,这一步非常重要! 例如,G(x) x^3 x^2 1 ,该式子表明的编…...

第P8周:YOLOv5-C3模块实现

>- **🍨 本文为[🔗365天深度学习训练营](https://mp.weixin.qq.com/s/rbOOmire8OocQ90QM78DRA) 中的学习记录博客** >- **🍖 原作者:[K同学啊 | 接辅导、项目定制](https://mtyjkh.blog.csdn.net/)** 一、 前期准备 1. 设…...

Java中常见的日志包分析(Log4j、Logback、SLF4J等)

Java中常见的日志jar包包括Log4j、Logback、SLF4J、java.util.logging等。它们各自的作用和应用场景如下: 1. Log4j 作用:Log4j是Apache的一个开源项目,提供日志记录的功能,支持多种输出目的地,如控制台、文件、GUI组…...

C++系列-第1章顺序结构-3-输出类cout

C系列-第1章顺序结构-3-输出类cout 在线练习: http://noi.openjudge.cn/ https://www.luogu.com.cn/ 总结 本文是C系列博客,主要讲述输出类cout的用法 cout介绍与基本用法 在C中,cout 是用于输出(打印)数据的工具&…...

对于智能设备的一些设想1

最近发现脑子里经常会出现一些能够偷懒的想法,希望这些点子能一点点保存下来,希望有需要的人拿走点子,不用谢 1.泡脚桶 2023年12月28日 近两年泡脚桶的风着实很大,我差点也就入坑了,于是有了一种设想,为什么…...

Large-Precision Sign using PBS

参考文献: [CLOT21] Chillotti I, Ligier D, Orfila J B, et al. Improved programmable bootstrapping with larger precision and efficient arithmetic circuits for TFHE[C]//Advances in Cryptology–ASIACRYPT 2021: 27th International Conference on the T…...

【电商项目实战】MD5登录加密及JSR303自定义注解

🎉🎉欢迎来到我的CSDN主页!🎉🎉 🏅我是Java方文山,一个在CSDN分享笔记的博主。📚📚 🌟推荐给大家我的专栏《电商项目实战》。🎯🎯 &am…...

2014,TEVC,A competitive swarm optimizer for large scale optimization(CSO)

PSO 分析(从而引入 CSO) CSO (competitive swarm optimizer) 算法是在PSO (particle swarm optimization) 算法的基础上改进而来的。PSO算法是一种功能强大、应用广泛的群体智能算法,主要用来解决优化问题。PSO算法包含一个粒子群&#xff0…...

【机器学习】【线性回归】梯度下降

文章目录 [toc]数据集实际值估计值估计误差代价函数学习率参数更新Python实现导包数据预处理迭代过程数据可视化完整代码 线性拟合结果代价结果 个人主页:丷从心 系列专栏:机器学习 数据集 ( x ( i ) , y ( i ) ) , i 1 , 2 , ⋯ , m \left(x^{(i)} , …...

JMeter逻辑控制器之While控制器

JMeter逻辑控制器之While控制器 1. 背景2.目的3. 介绍4.While示例4.1 添加While控制器4.2 While控制器面板4.3 While控制器添加请求4.3 While控制器应用场景 1. 背景 存在一些使用场景,比如:某个请求必须等待上一个请求正确响应后才能开始执行。或者&…...

记录 Docker 外部访问的基本操作

目录 1. 启动 docker 时挂载本地目录2. 外部访问 docker 容器 (-p/-P)3. 无法连接 docker 内 SSH 解决方案 1. 启动 docker 时挂载本地目录 # 将本地 D:/SDK 目录 挂载到 容器里的 /mnt/host 目录中 # 注意:-v /d/SDK:/mnt/host/ 必须放到 IMAGE_ID 前面才行 # …...

【Android 13】使用Android Studio调试系统应用之Settings移植(六):BannerMessagePreference

文章目录 一、篇头二、系列文章2.1 Android 13 系列文章2.2 Android 9 系列文章2.3 Android 11 系列文章三、BannerMessagePreference的移植3.1 新的问题:找不到 R.dimen.settingslib_preferred_minimum_touch_target3.2 问题分析(一)3.2.1 资源定义的位置3.2.2 检查依赖3.2…...

Python 变量

打印输出内容 print(‘rumenle’) print(‘haode’) 缩进需要tab 注释将需要注释的部分开头用# 多行注释 1、用你也可以左键选中我们需要注释的代码,松开,按:Ctrl/,就完成相同效果注释 2、把要注释的内容放到三个引号对里面 …...

ComfyUI如何中文汉化

comfyui中文地址如下: https://github.com/AIGODLIKE/AIGODLIKE-ComfyUI-Translationhttps://github.com/AIGODLIKE/AIGODLIKE-ComfyUI-Translation如何安装? 1. git安装 进入项目目录下的custom_nodes目录下,然后进入控制台,运…...

Glary Utilities Pro - 电脑系统优化全面指南:详尽使用教程

软件简介: Glary Utilities Pro 是一款全面的电脑优化工具,它旨在帮助用户提升计算机的性能和稳定性。这款软件提供了多种功能,包括系统清理、优化、修复以及保护。通过一键扫描,它可以识别并清除无用文件、临时数据、注册表错误等…...

1.4分页和排序

排序: -- 分页(limit)和排序(order by) -- 排序:升序ASC,降序DESC -- ORDER BY 通过字段排序,怎么排 -- 查询的结果根据成绩降序,升序 SELECT s.studentno,studentname,sub.subjectname,studentresult FROM student s RIGHT JO…...

Modbus转Profinet,不会编程也能用!轻松快上手!

Modbus转Profinet是一种用于工业自动化领域的通信协议转换器,可以将Modbus协议转换为Profinet协议,实现设备之间的数据交换与通信。这个工具的使用非常简单,即使没有编程经验的人也可以轻松上手。即使不会编程的人也可以轻松快速上手使用Modb…...

鸿蒙原生应用/元服务开发-Stage模型能力接口(十)下

ohos.app.form.FormExtensionAbility (FormExtensionAbility) 系统能力:SystemCapability.Ability.Form 示例 import FormExtensionAbility from ohos.app.form.FormExtensionAbility; import formBindingData from ohos.app.form.formBindingData; import formP…...

QT QPluginloader 加载失败,出现Unknown error 0x000000c1的问题

最近在学习Qt的插件开发&#xff0c;在加载插件时&#xff0c;一直失败&#xff0c;用如下代码加载并打印错误信息。 QDir dir("./testplugin.dll"); QPluginLoader pluginLoader(dir.absolutePath());//需要绝对路径 pluginLoader.load(); qDebug()<< "…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题&#xff1a;map 的 key 可以是什么类型&#xff1f;哪些不可以&#xff1f; 在 Golang 的面试中&#xff0c;map 类型的使用是一个常见的考点&#xff0c;其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

1.3 VSCode安装与环境配置

进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件&#xff0c;然后打开终端&#xff0c;进入下载文件夹&#xff0c;键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...

页面渲染流程与性能优化

页面渲染流程与性能优化详解&#xff08;完整版&#xff09; 一、现代浏览器渲染流程&#xff08;详细说明&#xff09; 1. 构建DOM树 浏览器接收到HTML文档后&#xff0c;会逐步解析并构建DOM&#xff08;Document Object Model&#xff09;树。具体过程如下&#xff1a; (…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

使用Matplotlib创建炫酷的3D散点图:数据可视化的新维度

文章目录 基础实现代码代码解析进阶技巧1. 自定义点的大小和颜色2. 添加图例和样式美化3. 真实数据应用示例实用技巧与注意事项完整示例(带样式)应用场景在数据科学和可视化领域,三维图形能为我们提供更丰富的数据洞察。本文将手把手教你如何使用Python的Matplotlib库创建引…...

PAN/FPN

import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)

推荐 github 项目:GeminiImageApp(图片生成方向&#xff0c;可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...

Razor编程中@Html的方法使用大全

文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...