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

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 在数值运算或其他上下文中仍然被看作是一个有效的整数值。

相关文章:

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

文章目录 变量变量作用——用于存储和表示数据。变量命名规则命名法大驼峰小驼峰下划体n j i a x 通常作为临时变量使用 建议 变量种类全局变量(Global Variables)局部变量(Local Variables)静态变量(Static Variables…...

Window下部署使用Stable Diffusion AI开源项目绘图

Window下部署使用Stable Diffusion AI开源项目绘图 前言前提条件相关介绍Stable Diffusion AI绘图下载项目环境要求环境下载运行项目打开网址,即可体验文字生成图像(txt2img)庐山瀑布 参考 本文里面的风景图,均由Stable Diffusion…...

【MySQL】好好学习一下InnoDB中的页

文章目录 一. 前言二. 从宏观层面看页三. 页的基本内容3.1 页的数据结构3.2 用户空间内的数据行结构3.3 页目录 四. 问题集4.1 索引 和 数据页 有什么区别4.2 页的大小是什么决定的4.3 页的大小对哪些情况有影响4.4 一般情况下说的链表有哪几个4.5 如果页的空间满了怎么办4.6 如…...

git开发常用命令

版本回退 soft:git reset --soft HEAD^ 将版本库回退一个版本,且这次提交的所有文件都移动到暂存区 mixed(默认):git reset HEAD^ 将版本库回退一个版本,且这次提交的所有文件都移动到工作区,会…...

WEB APIs day5

一、window对象 BOM属于window对象 1.BOM(浏览器对象模型) bom里面包含着dom,只不过bom我们平时用得比较少,我们经常使用的是dom操作,因为我们页面中的这些标签都是在dom中取的,所以我们操作dom多一点。 window对象…...

html动态爱心代码【一】(附源码)

前言 七夕马上就要到了,为了帮助大家高效表白,下面再给大家带来了实用的HTML浪漫表白代码(附源码)背景音乐,可用于520,情人节,生日,表白等场景,可直接使用。 效果演示 文案修改 var loverNam…...

【仿写tomcat】六、解析xml文件配置端口、线程池核心参数

线程池改造 上一篇文章中我们用了Excutors创建了线程,这里我们将它改造成包含所有线程池核心参数的形式。 package com.tomcatServer.http;import java.util.concurrent.*;/*** 线程池跑龙套** author ez4sterben* date 2023/08/05*/ public class ThreadPool {pr…...

Android Studio 接入OpenCV最简单的例子 : 实现灰度图效果

1. 前言 上文 我们在Windows电脑上实现了人脸功能,接下来我们要把人脸识别的功能移植到Android上。 那么首先第一步,就是要创建一个Native的Android项目,并且配置好OpenGL,并能够调用成功。 这里我们使用的是openCV-4.8.0&#x…...

(1)、扩展SpringCache一站式解决缓存击穿,穿透,雪崩

1、问题描述 我们在使用SpringCache的@Cacheable注解时,发现并没有设置过期时间这个功能。 @Target({ElementType.TYPE, ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME) @I...

Rancher使用cert-manager安装报错解决

报错: rancher-rke-01:~/rke/rancher-helm/rancher # helm install rancher rancher-stable/rancher --namespace cattle-system --set hostnamewww.rancher.local Error: INSTALLATION FAILED: Internal error occurred: failed calling webhook "webhook…...

Harvard transformer NLP 模型 openNMT 简介入门

项目网址: OpenNMT - Open-Source Neural Machine Translation logo: 一,从应用的层面先跑通 Harvard transformer GitHub - harvardnlp/annotated-transformer: An annotated implementation of the Transformer paper. ​git clone https…...

【数据结构OJ题】用栈实现队列

原题链接:https://leetcode.cn/problems/implement-queue-using-stacks/ 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 用两个栈实现,一个栈进行入队操作,另一个栈进行出队操作。 出队操作: 当出队的栈…...

通达信指标公式15:除权除息数据统计分析

#1.关于除权除息指标的介绍:本指标是小红牛原创指标之一,觉得有必要研究一下这个问题,所以就花时间整理一下这个指标相关内容,大家可以在本源码基础上,进一步优化自己的思路。本指标为通达信幅图指标,可以做…...

day-27 代码随想录算法训练营(19)回溯part03

39.组合总和 分析:同一个数可以选多次,但是不能有重复的答案; 思路:横向遍历,纵向递归(不同的是递归的时候不需要跳到下一个位置,因为同一个数可以选多次) class Solution { publ…...

CSDN编程题-每日一练(2023-08-22)

CSDN编程题-每日一练(2023-08-22) 一、题目名称:最长递增区间二、题目名称:K树三、题目名称:小Q的价值无向图一、题目名称:最长递增区间 时间限制:1000ms内存限制:256M 题目描述: 给一个无序数组,求最长递增的区间长度。如:[5,2,3,8,1,9] 最长区间 2,3,8 长度为 3。…...

使用 KubeBlocks 为 K8s 提供稳如老狗的数据库服务

原文链接:https://forum.laf.run/d/994 大家好!今天这篇文章主要向大家介绍 Sealos 的数据库服务。在 Sealos 上数据库后端服务由 KubeBlocks 提供,为用户的数据库应用保驾护航。无论你是在公有云还是本地环境中使用,Sealos 都能为…...

SFL212B-10-21-15、SFL212B-20-21-40喷嘴挡板伺服阀

SFL212B-05-21-10、SFL212B-10-21-15、SFL212B-20-21-40、SFL212-05-32-10、SFL212-10-32-15、SFL212-20-32-40、SFL212A-05-21-10、SFL212A-10-21-15、SFL212A-20-21-40喷嘴挡板力反馈伺服阀,外置伺服放大器,四通,带阀芯阀套的两级伺服阀&am…...

阿里云100元预算可选的云服务器配置2核2G3M带宽

阿里云服务器100元可以买到哪些配置?如果是一年时长,轻量应用服务器2核2G3M带宽一年108元,系统盘为50GB高效云盘。以前阿里云服务器ECS卖过35元一年、69元、88元、89元和99元的都有过,但是现在整体费用上涨,入门级云服…...

Linux问题--docker启动mysql时提示3306端口被占用

问题描述: 解决方法: 1.如果需要kill掉mysqld服务可以先通过 lsof -i :3306 2. 查询到占用3306的PID,随后使用 kill -15 PID 来kill掉mysqld服务。 最后结果...

2023年中秋月饼市场趋势分析(月饼京东销售数据分析)

中秋将至,月饼作为节令食品将再次掀起消费热潮。今年月饼市场的需求如何呢,是更受欢迎还是热度有所降低,结合数据我们一起来看今年月饼市场的销售表现。 在这里,我们分别选取了2022年第31周-32周和2023年第31周-32周(…...

使用taotoken后c语言项目调用大模型的延迟与稳定性实际体验

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 使用taotoken后c语言项目调用大模型的延迟与稳定性实际体验 在开发一个需要集成大模型能力的C语言桌面应用时,我们面临…...

利用Taotoken模型广场为不同业务场景快速选型合适模型

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 利用Taotoken模型广场为不同业务场景快速选型合适模型 为聊天机器人、代码生成助手或内容创作工具挑选一个合适的大模型&#xff0…...

从NASA音频设计看极端约束下的工程权衡:可靠性如何塑造系统特性

1. 项目概述:从一次论坛讨论说起如果你和我一样,是个对技术细节有强迫症的老工程师,或者是个音频发烧友,那你肯定也曾在看NASA的航天直播或纪录片时,皱起眉头嘀咕过:“这声音怎么这么差?” 那种…...

从图像到十字绣:基于颜色量化与DMC匹配的自动化绣图生成技术

1. 项目概述:从代码仓库到十字绣艺术的数字桥梁最近在GitHub上闲逛,发现了一个挺有意思的项目,叫suads463/xstitch。光看名字,你可能会有点摸不着头脑,suads463显然是作者的用户名,而xstitch这个缩写&#…...

终极Element Plus Admin指南:快速构建企业级后台管理系统的完整解决方案

终极Element Plus Admin指南:快速构建企业级后台管理系统的完整解决方案 【免费下载链接】element-plus-admin 基于vitetselementPlus 项目地址: https://gitcode.com/gh_mirrors/el/element-plus-admin 你是否正在寻找一个能够快速搭建企业级后台管理系统的…...

基于React与Docker构建可定制个人仪表盘:homepage项目实战指南

1. 项目概述:一个现代、轻量的个人仪表盘如果你和我一样,每天上班第一件事就是打开十几个浏览器标签页,在邮箱、项目管理工具、服务器监控、待办清单、常用文档之间来回切换,那么你一定能理解那种“数字工作台”杂乱无章带来的烦躁…...

PT助手Plus终极指南:3步实现浏览器PT下载自动化

PT助手Plus终极指南:3步实现浏览器PT下载自动化 【免费下载链接】PT-Plugin-Plus PT 助手 Plus,为 Microsoft Edge、Google Chrome、Firefox 浏览器插件(Web Extensions),主要用于辅助下载 PT 站的种子。 项目地址: …...

经营分析≠财务分析,经营分析必看的3条路径分析

每个月开经营分析会,我最怕看到什么?就是财务把利润表从头到尾念了一遍,收入多少、成本多少、费用多少,然后开始读PPT。念完就散会。问题解决了吗?没有。说实话,我第一次看这种汇报也觉得数据很全&#xff…...

运营商Palantir本体论落地思考

在运营商数字化转型的浪潮中,数据平台建设已经不是什么新鲜事。大多数省级运营商都已经有了自己的数据中台、数据湖或者BI系统,能看到数据、能做报表、能出分析。但问题来了:**看到数据之后呢?**分析完了,客户可能离网…...

高速数字系统中的抖动测量与分析技术详解

1. 抖动测量基础与核心概念解析在高速数字系统设计中,抖动(Jitter)已经成为影响信号完整性的关键参数。简单来说,抖动就是数字信号边沿相对于理想时序位置的偏差。这种时域上的微小偏移看似微不足道,但当数据速率突破1…...