Python从入门到放弃——整数类型变量

变量

前言

上一篇文章中我们学习了Print函数,并且深入的理解了Print函数的各个参数。明确了应该如何利用各种参数来实现我们想输出的效果。那么现在让我们来学习一下变量这一个知识点。

什么是变量

变量,作为编程中的核心概念之一,其重要性不言而喻。当我们谈论变量时,常常将其比作一个水杯,这是因为这种比喻能够直观地帮助我们理解变量的基本功能和作用。然而,为了更深入地探讨变量在计算机编程中的实质和运作机制,我们需要从更宽广的视角来审视它。

首先,让我们从基础概念出发。变量,顾名思义,是一个可以变化的量。在编程中,变量用于存储数据,这些数据可以是数字、文本、图像等各种形式的信息。正如水杯可以装水、可乐或橙汁一样,变量可以存储不同类型的数据,并在需要时进行访问和操作。

然而,当我们说变量存在于计算机的内存中时,我们实际上是在谈论一个更为复杂和精细的系统。计算机内存是计算机系统中用于存储数据和程序指令的物理或逻辑区域。内存由一系列的存储单元组成,每个单元都有一个唯一的地址,用于标识和访问其中的数据。

当我们声明一个变量并为其赋值时,计算机实际上是在内存中为这个变量分配了一个或多个存储单元,并将数据存储在这些单元中。这个过程是通过操作系统和编程语言的内存管理机制来完成的。一旦数据被存储在内存中,我们就可以通过变量名来访问和操作这些数据,而无需直接操作内存地址。下图就是变量存储数据的示意图。

变量的类型

变量作为编程语言中非常常用的知识点,包含了很多的数据类型,在这里我们简单的展开一下:整数类型、浮点数类型、布尔类型、字符串类型、列表类型、字典类型、集合类型、元组类型、自定义类型。本次变量的整体内容中我们只讲解整数类型、浮点数类型、布尔类型和字符串类型。剩下的类型我们在后面会进行提及。

变量定义

变量在使用前一定要先进行定义,如果没有定义的话,代码会弹出报错。如下所示:

Traceback (most recent call last):File "/Users/loadingcreate/Desktop/LearnPython/L2.py", line 11, in <module>print(a)^
NameError: name 'a' is not defined

上面报错中的a是我没有经过定义直接输出的一个变量,这样代码就会报错,报错的问题就是名字叫做a的这个东西没有定义。

那么!如何定义一个变量呢??其实很简单。如下所示:

a = 10
print(a)

上面的代码中我将变量a定义为了10,然后直接输出了这个变量,终端中自动打印出了10这个结果。

那么现在我要强调一个很关键的知识点就是:= 并不是我们生活中的等于,在编程中这个东西叫做赋值符号,它可以将=右侧的数据存储到=左侧的变量中。

Python中的整数类型(Integer Type)

在Python编程语言中,整数类型(Integer Type)是一种非常基础且常用的数据类型。整数类型用于表示没有小数部分的数字,可以是正整数、零或负整数。Python的整数类型具有无限的精度,即它们可以表示任意大小的整数,而不需要像某些其他编程语言那样担心整数溢出的问题。

整数类型的表示

在Python中,整数可以直接以数字字面量的形式表示,如:

# 正整数  
positive_integer = 123  
# 零  
zero = 0  
# 负整数  
negative_integer = -456  
# 非常大的整数  
large_integer = 123456789012345678901234567890  
# 十六进制整数(以0x或0X开头)  
hex_integer = 0xDEADBEEF  
# 八进制整数(以0o或0O开头)  
octal_integer = 0o1234567  
# 二进制整数(以0b或0B开头)  
binary_integer = 0b10101010

整数类型的运算

Python支持对整数进行各种算术运算,包括加(+)、减(-)、乘(*)、除(/)、整除(//)、取模(%)和幂运算。

# 加法  
sum = 1 + 2  
# 减法  
difference = 3 - 1  
# 乘法  
product = 2 * 3  
# 除法(返回浮点数)  
quotient = 5 / 2  # 结果为 2.5  
# 整除(返回整数,丢弃小数部分)  
floor_quotient = 5 // 2  # 结果为 2  
# 取模(返回除法的余数)  
remainder = 5 % 2  # 结果为 1  
# 幂运算  
exponentiation = 2 ** 3  # 结果为 8

整数类型的特性

Python的整数类型具有无限的精度,即可以表示任意大小的整数。
整数类型支持位运算,如按位与(&)、按位或(|)、按位异或(^)、按位取反(~)、左移(<<)和右移(>>)。
整数类型可以与其他数据类型(如浮点数、字符串等)进行类型转换和混合运算,但需要注意类型转换的规则和运算结果的类型。

整数类型的类型转换

Python中可以使用内置的int()函数将其他类型(如浮点数、字符串等)转换为整数类型。

# 将浮点数转换为整数(丢弃小数部分)  
int_from_float = int(3.14)  # 结果为 3  # 将字符串转换为整数  
int_from_string = int("123")  # 结果为 123  # 注意:如果字符串不能被解析为有效的整数,将引发ValueError异常  
# int_from_invalid_string = int("abc")  # 抛出ValueError异常

总结

整数类型在Python编程中扮演着重要的角色,它用于表示没有小数部分的数字,并支持各种算术运算和位运算。由于Python的整数类型具有无限的精度,因此在处理大整数时不需要担心溢出问题。同时,整数类型还可以与其他数据类型进行类型转换和混合运算,为开发者提供了极大的灵活性。

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

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

相关文章

Laravel事件与监听器:响应式编程的艺术

标题&#xff1a;Laravel事件与监听器&#xff1a;响应式编程的艺术 Laravel框架以其优雅的响应式编程模型而闻名&#xff0c;事件&#xff08;Event&#xff09;和监听器&#xff08;Listener&#xff09;是这一模型的核心组成部分。事件是一种在应用程序中触发的信号&#x…

STM32和DHT11使用显示温湿度度(代码理解)+单总线协议

基于STM32CT&#xff0c;利用DHT11采集温湿度数据&#xff0c;在OLED上显示。一定要阅读DHT11数据手册。 1、 DHT11温湿度传感器 引脚说明 1、VDD 供电3.3&#xff5e;5.5V DC 2、DATA 串行数据&#xff0c;单总线 3、NC 空脚 4、GND 接地&#xff0c;电源负极 硬件电路 微…

docker部署kafka(单节点) + Springboot集成kafka

环境&#xff1a; 操作系统&#xff1a;win10 Docker&#xff1a;Docker Desktop 4.21.1 (114176)、Docker Engine v24.0.2 SpringBoot&#xff1a;2.7.15 步骤1&#xff1a;创建网络&#xff1a; docker network create --subnet172.18.0.0/16 net-kafka 步骤2&#xff1a;安…

秋招突击——7/4——复习{}——新作{最长公共子序列、编辑距离、买股票最佳时机、跳跃游戏}

文章目录 引言复习新作1143-最长公共子序列个人实现 参考实现编辑距离个人实现参考实现 贪心——买股票的最佳时机个人实现参考实现 贪心——55-跳跃游戏个人实现参考做法 总结 引言 昨天主要是面试&#xff0c;然后剩下的时间都是用来对面试中不会的东西进行查漏补缺&#xff…

Spring:Spring框架的发展历程与学习指南

一、引言 在Java企业级应用开发的世界中&#xff0c;Spring框架无疑是一颗耀眼的明星。它不仅极大地简化了开发过程&#xff0c;还为软件工程师提供了一种高效、可扩展的解决方案。本文将简要回顾Spring框架的发展史&#xff0c;并为初学者提供学习Spring基础的指导。 二、Spr…

密封类知识点

基本概念 密封类是使用sealed密封关键字修饰的类。 作用&#xff1a;让类无法再被继承。 实例 class Father {}sealed class Son:Father {} 作用 面向对象程序的设计中&#xff0c;密封类的主要作用就是不允许最底层子类被继承。 可以保证程序的规范性、安全性。 总结 关…

python 基于函数的API设计,理解接口与实现分离

在 Python 中&#xff0c;基于函数的 API 设计中实现接口与实现分离是一种良好的编程实践&#xff0c;它可以提高代码的可维护性、可扩展性和可读性。 接口&#xff1a;可以理解为一组定义好的函数签名&#xff0c;这些函数签名描述了函数的名称、参数以及返回值的类型&#xf…

MySQL 9.0 创新版发布,大失所望。。

大家好&#xff0c;我是程序员鱼皮。2024 年 7 月 1 日&#xff0c;MySQL 发布了 9.0 创新版本。区别于我们大多数开发者常用的 LTS&#xff08;Long-Term Support&#xff09;长期支持版本&#xff0c;创新版本的发布会更频繁、会更快地推出新的特性和变更&#xff0c;可以理解…

python库(5):Psutil库实现系统和硬件监控工具

1 psutil简介 psutil&#xff08;process and system utilities&#xff09;是一个跨平台库&#xff0c;用于检索运行中进程和系统利用率&#xff08;包括 CPU、内存、磁盘、网络等&#xff09;的信息&#xff0c;可以提供丰富的系统监控功能。 2 psutil安装 pip install -i …

CSS中 实现四角边框效果

效果图 关键代码 border-radius:10rpx ;background: linear-gradient(#fff, #fff) left top,linear-gradient(#fff, #fff) left top,linear-gradient(#fff, #fff) right top,linear-gradient(#fff, #fff) right top,linear-gradient(#fff, #fff) left bottom,linear-gradient(…

BeikeShop多国语言多货币商城系统源码基于Laravel框架

BeikeShop是基于 Laravel 开发的一款开源商城系统&#xff0c;支持多语言商城 多货币商城 100%全开源 ChatGPT OpenAI B2C商城系统 H5商城 PHP商城系统 商城源码 PC商城 跨境电商系统 跨境商城系统 电商商城系统 Laravel 10 框架开发系统&#xff0c;支持插件市场。 Event 机制…

配置基于不同端口的虚拟主机

更改配置文件&#xff0c;添加三个不同端口的虚拟主机 <directory /www> allowoverride none require all granted </directory><virtualhost 192.168.209.136:80> documentroot /www servername 192.168.209.136 </virtualhost><virtualhost 192.…

实训项目中用到的一些知识点(部分来自文心一言)

一、使用的注解及其功能 Configuration&#xff1a;用于定义配置类&#xff0c;该类可以包含Bean注解的方法&#xff0c;这些方法将被Spring容器在启动时自动调用&#xff0c;用于声明bean。 EnableSwagger2&#xff1a;启用Swagger 2.x&#xff0c;一个规范和完整的框架&…

74. 搜索二维矩阵【二分法】【C++】

题目描述 搜索二维矩阵 给你一个满足下述两条属性的 m x n 整数矩阵&#xff1a; 每行中的整数从左到右按非严格递增顺序排列。 每行的第一个整数大于前一行的最后一个整数。 给你一个整数 target &#xff0c;如果 target 在矩阵中&#xff0c;返回 true &#xff1b;否则&…

CTF入门知识点

CTF知识点 md5函数 <?php$a 123;echo md5($a,true); ?> 括号中true显示输出二进制 替换成false显示输出十六进制绕过 ffifdyop 这个字符串被 md5 哈希了之后会变成 276f722736c95d99e921722cf9ed621c&#xff0c;这个字符串前几位刚好是 or 6 而 Mysql 刚好又会把 …

【向量数据库|一文全面了解向量数据库的基本概念、原理、算法、选型】

文末有福利&#xff01; 向量数据库的原理和实现&#xff0c;包括向量数据库的基本概念、相似性搜索算法、相似性测量算法、过滤算法和向量数据库的选型等等。向量数据库是崭新的领域&#xff0c;目前大部分向量数据库公司的估值乘着 AI 和 GPT 的东风从而飞速的增长&#xff…

【国产开源可视化引擎Meta2d.js】拖拽

Meta2d.js已监听拖拽事件&#xff0c;支持接收一个有效的图元Json数据&#xff0c;在画布创建一个图元对象。 图形库拖拽 1. 创建图形库工具栏 创建图形库工具栏 html 元素&#xff0c;绑定拖拽事件或 touch 事件 <div v-for"item in list" draggable"tr…

Java版本迭代的过程(Java面经)

Java 5: 泛型与注解 泛型&#xff1a;使得Web应用可以编写更加类型安全的代码&#xff0c;特别是在处理各种数据结构时&#xff0c;如集合框架的使用。注解&#xff1a;极大地简化了配置管理&#xff0c;Spring框架的崛起得益于Java 5的注解支持&#xff0c;使得依赖注入和AOP…

白骑士的C语言教学高级篇 3.5 性能优化

性能优化是软件开发中非常重要的一个环节。优化程序的内存使用和运行时间可以显著提升软件的效率和用户体验。本节将介绍内存优化、时间复杂度与空间复杂度的概念&#xff0c;以及一些常见的代码优化技巧。 内存优化 内存优化主要关注如何合理地分配和使用内存&#xff0c;以减…

C++ 智能指针使用不当导致内存泄漏问题

shared_ptr相互嵌套导致循环引用 代码示例 #include <iostream> #include <memory> using namespace std;class B;class A { public:std::shared_ptr<B> b_ptr;~A() { std::cout << "A destroyed\n"; } };class B { public:std::shared_pt…