python 基础篇 day 1 初识变量和数据类型

文章目录

  • 变量
      • 变量作用——用于存储和表示数据。
      • 变量命名
          • 规则
          • 命名法
            • 大驼峰
            • 小驼峰
            • 下划体
            • n j i a x 通常作为临时变量使用
          • 建议
      • 变量种类
            • 全局变量(Global Variables)
            • 局部变量(Local Variables)
            • 静态变量(Static Variables)
            • 实例变量(Instance Variables)
            • 类变量(Class Variables)
            • 参数变量(Parameter Variables)
      • 变量使用
  • 数据类型
      • 数值类型(Numeric Types)
      • 字符串类型(String Type)
      • 布尔类型(Boolean Type)
      • 列表类型(List Type)
      • 元组类型(Tuple Type)
      • 字典类型(Dictionary Type)
      • 集合类型(Set Types)
      • 其他类型
      • 注意

变量

变量作用——用于存储和表示数据。

通过定义和使用变量,我们可以在程序执行过程中动态地保存和修改数据。

变量的作用包括但不限于以下几个方面:

  • 存储数据:变量可以用来存储各种类型的数据,包括数字、字符串、布尔值等。
  • 数据传递:变量可以作为参数传递给函数或方法,以便在不同的代码块之间共享数据。
  • 数据操作:变量可以参与各种运算操作,例如数学运算、字符串拼接、逻辑判断等。
  • 数据状态管理:变量可以用于跟踪和管理程序中的状态,例如计数器变量、标志变量等。

变量命名

合理的变量命名是编写清晰、易读和易于维护代码的重要因素。

规则
  • 变量的名字只能由字母 数字 下划线组成
  • 数字不能作为名称开头(支持中文变量名称)
  • 系统关键字不能作为变量名称
  • 变量名称对大小写敏感
命名法
大驼峰

每个单词的首字母都大写 面向对象才会用到

FirstName LastName LastNameData

小驼峰

第一个单词字母小写,后面的单词首字母大写

firstName lastName lastNameData

下划体

first_name last_name last_name_data

n j i a x 通常作为临时变量使用
建议
  • 使用使用有意义的名称:变量名应该反映其所代表的数据含义,更易读懂(见名知义)。
  • 遵循命名规范:通常使用小写字母和下划线来组成变量名,避免使用特殊字符和空格
  • 使用驼峰命名法:对于由多个单词组成的变量名,可以使用驼峰命名法(除首个单词外,后续单词的首字母大写
  • 遵循命名约定:在特定的编程语言或项目中,可能有特定的命名约定和惯例,应遵循并统一使用。

变量种类

常见的变量种类,包括全局变量、局部变量、静态变量、实例变量、类变量、参数变量等。
每种变量都有其特定的作用范围和生命周期,用于满足不同的编程需求。

全局变量(Global Variables)

在程序的任何地方都可以访问的变量,它们在整个程序执行过程中都存在。全局变量通常在程序的顶层定义,在函数内部也可以通过global关键字进行全局引用。

局部变量(Local Variables)

在特定代码块、函数或方法内定义和使用的变量。局部变量的作用范围仅限于其被定义的代码块,超出该范围后将无法访问。

静态变量(Static Variables)

在面向对象编程中,静态变量是在类级别定义的变量,它们在整个类的生命周期内保持不变,从程序启动到程序关闭,始终存在于内存中。与实例变量相比,静态变量属于类本身而不是类的实例,可以通过类名或实例访问

实例变量(Instance Variables)

在面向对象编程中,实例变量是在类的实例化过程中为每个实例单独分配的变量,只能通过类的实例来访问。实例变量的作用范围限于特定的实例对象,不同的实例对象可以具有不同的实例变量值。实例变量通常在类的构造方法(__init__方法)中定义。

类变量(Class Variables)

在面向对象编程中,类变量是在类级别定义的变量,被该类的所有实例共享。类变量属于类本身而不是实例,可以通过类名或实例访问。类变量的生命周期与类的实例相关联,当销毁实例时,类变量也会被释放。(有实例才有类变量,但是可以通过类名访问

参数变量(Parameter Variables)

在函数或方法定义中声明的变量,用于接受调用者传递的参数值。参数变量的作用范围限于函数或方法的执行过程,可以通过参数列表传递和访问。

变量使用

赋值操作:通过赋值运算符 = 将具体的值赋给变量。
引用变量:通过变量名来引用和访问变量保存的数据。
修改变量:可以根据需要对变量的值进行修改或更新。
作用范围:确保变量的作用范围(如全局、局部)正确并符合设计意图。
生命周期:理解变量的生命周期是确保在合适的时间创建、使用和销毁变量的重要因素。

合理地使用变量可以提高代码的可读性、灵活性和可维护性,同时也有助于避免错误和减少资源的浪费。

数据类型

在这里插入图片描述

数值类型(Numeric Types)

整数(int):表示整数,如1、-10、100。
浮点数(float):表示带有小数部分的数字,如3.14、-0.5、1.0。

字符串类型(String Type)

字符串(str):表示一系列字符组成的文本,可以使用单引号或双引号括起来,如"Hello"、‘Python’。

布尔类型(Boolean Type)

布尔值(bool):表示真(True)或假(False)的值,用于逻辑判断和控制流程
如True、False。

列表类型(List Type)

列表(list):表示一系列按特定顺序排列的值,可包含不同类型的元素,用方括号括起来
如[1, 2, 3]、[‘a’, ‘b’, ‘c’]。

元组类型(Tuple Type)

元组(tuple):类似于列表,但是不可修改,用圆括号括起来
如(1, 2, 3)、(‘a’, ‘b’, ‘c’)。

字典类型(Dictionary Type)

字典(dict):表示一组键值对(key-value)的集合,用花括号括起来
如{‘name’: ‘Alice’, ‘age’: 25}。

集合类型(Set Types)

集合(set):表示一组无序且不重复的元素,用花括号或set()函数创建
如{1, 2, 3}、set([4, 5, 6])。

其他类型

None类型:表示空值或缺失值,用于表示变量没有值或函数没有返回值。

以上是Python中常见的数据类型,每种类型都有其特定的属性、方法和用途。可以根据实际需求选择合适的数据类型来存储和操作数据。

注意

在 Python 中,整数 0 并不是布尔类型(bool)的 False 值,但它可以被视为假值(Falsy)

在布尔上下文中,以下值被视为假值:
False:布尔类型的假值。
None:表示空值或缺失值的特殊对象。
0:整数类型的零。
0.0:浮点型的零。
“”:空字符串。
[]:空列表。
():空元组。
{}:空字典。
set():空集合。

总结:0 和空

这些值在逻辑表达式被视为 False,其他非假值都被视为 True。
因此,可以使用 0 在某些条件下表示假值

例如:

my_var = 0
if not my_var:print("my_var is a falsy value")

在上面的示例中,变量 my_var 被赋值为 0,使用 not 运算符来检查其真假值。由于 0 是一个假值,所以条件成立,输出 “my_var is a falsy value”。

需要注意的是,0 在数值运算或其他上下文中仍然被看作是一个有效的整数值。

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

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

相关文章

万宾科技22款产品入选《城市生命线安全工程监测技术产品名录》

2023年8月17日-18日,由北京市地下管线协会主办的2023首届城市生命线安全与发展大会在北京召开,本次大会汇聚中央及地方政府主管领导、院士专家、行业领袖、龙头代表、产业精英等。 大会聚焦安全监管智慧平台和燃气爆炸、城市内涝、地下管线交互风险、第三…

解决Spring mvc + JDK17@Resource无法使用的情况

问题描述 我在使用jdk17进行Spring mvc开发时发现 Resource用不了了。 原因 因为JDK版本升级的改动,在Jdk9~17环境下,搭建Springboot项目,会出现原有Resource(javax.annotation.Resource)不存在的问题,导…

全流程R语言Meta分析核心技术

Meta分析是针对某一科研问题,根据明确的搜索策略、选择筛选文献标准、采用严格的评价方法,对来源不同的研究成果进行收集、合并及定量统计分析的方法,最早出现于“循证医学”,现已广泛应用于农林生态,资源环境等方面。…

政务、商务数据资源有效共享:让数据上“链”,记录每一个存储过程!

数据上链是目前“区块链”最常见的场景。因为链上所有参与方都分享了统一的事实来源,所有人都可以即时获得最新的信息,数据可用不可见。因此,不同参与方之间的协作效率得以大幅提高。同时,因为区块链上的数据难以篡改,…

香蕉派社区推出带10G SFP+ 端口的Banana Pi BPI-R4 Wifi7开源路由器

香蕉派BPI-R4 根据著名Banana Pi品牌背后的公司Sinovoip提供的初步信息,他们即将推出的Banana Pi BPI-R4路由器板目前正在开发中。与之前的 Banana Pi R3 板相比,这在规格上将有显着提升。这就是我们目前所知道的。 您可以选择 R4 板的两种不同配置。具…

Docker部署LNMP

Docker部署LNMP 一、安装docker1.安装docker2.镜像下载 二、部署MySQL1.获取镜像2.创建启动容器创建启动容器 huahua_mysql 三、部署PHP1.获取镜像2.创建容器3.查看信息 四、安装nginx1.获取镜像2.创建运行容器3.修改nginx配置文件 五、总结1. 安装Docker和Docker Compose&…

实战演练 | Navicat 导出向导

数据库工具中的导入导出功能是指将数据从一个数据库系统导出到另一个数据库系统,或者将数据从一个文件格式导出到另一个文件格式。导入导出功能可以通过各种方式实现,例如使用SQL语句、数据库管理工具或第三方库和工具。在进行数据迁移时,通常…

如何关闭“若要接收后续google chrome更新,您需使用windows10或更高版本”

Windows Registry Editor Version 5.00[HKEY_CURRENT_USER\Software\Policies\Google\Chrome] "SuppressUnsupportedOSWarning"dword:00000001 如何关闭“若要接收后续 google chrome 更新,您需使用 windows 10 或更高版本” - 知乎

【FAQ】安防监控视频云存储平台EasyNVR频繁离线的原因排查与解决

有用户反馈,在使用EasyNVR时会出现通道频繁离线的情况。针对该反馈我们立即进行了排查。 安防视频监控汇聚EasyNVR视频集中存储平台,是基于RTSP/Onvif协议的安防视频平台,可支持将接入的视频流进行全平台、全终端分发,分发的视频流…

区块链与算力网络:创造未来网络的安全与共享

在数字革命的浪潮下,网络技术正焕发着前所未有的活力,而算力网络以其独特的区块链技术应用,为网络的安全性和资源共享带来了新的可能性。本文将带您深入探索算力网络中区块链技术的神奇应用,为您呈现这个充满活力和创新的网络未来…

华为数通方向HCIP-DataCom H12-821题库(单选题:01-20)

第01题 下面关于OSPF邻居关系和邻接关系描述正确的是 A、邻接关系由 OSPF的 DD 报文维护 B、OSPF 路由器在交换 Hello 报文之前必须建立邻接关系 C、邻居关系是从邻接关系中选出的为了交换路由信息而形成的关系 D、并非所有的邻居关系都可以成为邻接关系 答案:D 解析…

smiley-http-proxy-servlet 实现springboot 接口反向代理,站点代理,项目鉴权,安全的引入第三方项目服务

背景: 项目初期 和硬件集成,实现了些功能服务,由于是局域网环境,安全问题当时都可以最小化无视。随着对接的服务越来越多,部分功能上云,此时就需要有一种手段可以控制到其他项目/接口的访问权限。 无疑 反向…

HTML a标签

<a>标签定义一个超链接。它有如下主要属性&#xff1a; href&#xff1a;指定链接的地址&#xff0c;可以是一个URL、文件路径或锚点。target&#xff1a;指定链接在何处打开。其值包括&#xff1a; _blank&#xff1a;在新窗口或新标签页打开链接。_self&#xff1a;在…

Spring统一功能处理

1. AOP存在的问题 获取参数复杂AOP的规则相对简单 2. 拦截器 2.1. 应用(以登录为例) 2.1.1. 自定义拦截器 新建interceptor文件夹 import org.springframework.web.servlet.HandlerInterceptor;import javax.servlet.http.HttpServletRequest; import javax.servlet.http…

go_并发编程

go并发编程 一、 并发介绍1&#xff0c;进程和线程2&#xff0c;并发和并行3&#xff0c;协程和线程4&#xff0c;goroutine 二、 Goroutine1&#xff0c;使用goroutine1&#xff09;启动单个goroutine2&#xff09;启动多个goroutine 2&#xff0c;goroutine与线程3&#xff0…

sdk manager (ubuntu20.4) 安装

1、首先下载sdk manager 1.9.3 下载链接 https://www.baidu.com/link?urlVXJhUqxxhS3eFK3bOPTzi5LFl6ybeW3JwDY1CwANaPf1gvO3IxQKzY547NIe53x1blJxnAXg7FTRTvs-cnfnVa&wd&eqida22baa7b0004ca980000000664e2d426 当然要登录自己的账号才能成功下载&#xff0c;下载对应…

用于智能图像处理的计算机视觉和 NLP

莫斯科&#xff0c;神秘之城...&#xff08;这张照片由伊戈尔沙巴林提供&#xff09; 一、说明 如今&#xff0c;每个拥有智能手机的人都可能成为摄影师。因此&#xff0c;每天都有大量新照片出现在社交媒体、网站、博客和个人照片库中。尽管拍照的过程可能非常令人兴奋&#x…

MyBaits注解开发

1、注解开发介绍 在过去使用框架开发项目&#xff0c;基本都采用xml作为框架的核心配置文件存在&#xff0c;但是这种方式开发效率还是比较地下、不灵活。 现在企业开发为了能够更快的提高开发效率&#xff0c;必然会使用企业级框架进行项目开发&#xff0c;而现在主流的框架…

docker 安装oracle19c linux命令执行sql

docker安装oracle # 下载镜像 19.3.0.0.0 docker pull registry.cn-hangzhou.aliyuncs.com/laowu/oracle:19c # 创建文件 mkdir -p /home/mymount/oracle19c/oradata # 授权&#xff0c;不授权会导致后面安装失败 chmod 777 /home/mymount/oracle19c/oradatadocker run -d \ …

还不知道怎么提示LLM?ChatGPT提示入门

文章目录 简介&#xff1a;什么是人工智能&#xff1f;什么是提示过程&#xff1f;为什么会出现这样的差异&#xff1f; 为什么需要提示过程&#xff1f;1) 文章摘要2) 数学问题求解 如何进行提示过程&#xff1f;角色提示&#xff1a;多范例提示&#xff1a;无范例提示单范例提…