python笔记2

news2025/3/18 4:39:07

变量:含义
一个容器,计算机当中的存储空间。
可以理解为一个用于标识或引用数据的名字或标签。

 作用:
可以通过定义一个变量来给需要使用多次的数据命名,就像一个标签一样。下次需要使用这个数据时,只需要通过这个变量名就可以直接提取,大大提高了效率。

基本格式:
变量=数据(值)
直接给变量赋值
# num = 100   # 将数据100保存到变量num中
# print(num)
将一个变量的值赋给另一个变量
# num2 = num
# print(num2)
将运算结果赋给变量
# result = num + num2
# print(result)

注意:print("xxx")和print(xxx)的区别
# print(num)   # NameError: name 'num' is not defined. Did you mean: 'sum'?
不加引号,被识别为变量名。任何变量在使用之前都必须先被赋值,因为只有在赋值之后,该变量才会被创建,之后才能被程序识别和使用。
# print("num")
加上引号,会被视为字符串类型的数据,数据可以直接被输出或使用的。

同一个变量可以被反复赋值
# money = 100
# print(money)  结果是100
# money = money - 50
# print(money)   结果是50

# a = 1
# a = 5
# a = 10
# print(a)    结果是10
# 代码遵循自上而下逐行执行的顺序。

序列赋值
# 变量名1, 变量名2, 变量名3, ..., 变量名n = 值1, 值2, 值3, ..., 值n

标识符:含义
在Python中,标识符用于给变量、函数、类或其他对象命名。

标识符规定[必须遵守,否则会报错]
   只能由数字、字母、_(下划线)组成
# user_name1 = "lzy"
# print(user_name1)

# user name = "lzy"    # SyntaxError: invalid syntax  变量名中有空格
注意:
① Python允许使用中文命名标识符,但出于代码规范性和可读性的考虑,通常不推荐这样做
#姓名 = "lzy"
#print(姓名)

② 给标识符外加括号通常不会导致语法错误,因为括号本身不会对标识符产生直接影响
# (name) = "lzy"
# print((name))  结果是lzy
# print(name)   结果是lzy
# (user)name = "lzy"    # SyntaxError: invalid syntax

- 不能以数字开头
这确保了标识符的开头能够清晰的表明其是一个标识符,而不是一个具体的数据.
# _name1 = "lzy"
# print(_name1)

# 1stu = 1    # SyntaxError: invalid decimal literal

- 不能是关键字
关键字:已经预定义并赋予特殊功能和含义的标识符. 当在Pycharm中输入关键字时,它们的字体颜色通常会发生变化,以便于开发者识别和区分.


# False = 1   # SyntaxError: cannot assign to False

 - 严格区分大小写
Python是大小写敏感的编程语言.

# myVar = 1
# MyVar = 2
# MYVAR = 3
# print(MyVar)  结果是1
# print(myVar) 结果是2
# print(MYVAR) 结果是3
# 在定义和使用标识符时,必须精确匹配其大小写.

变量的命名规范
[旨在提升代码的可读性\可维护性和团队协作的效率,不具备绝对的强制性,但是被视为一种良好的编程习惯,强烈推荐并尽量遵循]
1) 见名知意
变量名应具有描述性,能够清晰的表达变量的用途或所存储的数据类型.
# name = "lzy"  #名字
# print(name)

# age = 18  #年龄

2) 下划线分割法(Python中常用的变量命名方式)
# 变量名中的每个单词都用_(下划线)来连接
# user_name = "lzy"
# employee_id = 1

3) 大驼峰命名法(Python中常用的类命名方式)
# 变量名中的每个单词首字母都大写,不使用下划线
# UserName = "lzy"
# EmployeeId = 1

4) 小驼峰命名法
# 变量名中的第一个单词首字母小写,从第二个单词开始每个单词的首字母大写,其余字母小写,不使用下划线.
# userName = "lzy"
# employeeId = 1

简单的数据类型
数值类型
1) 整型 int
用于存储任意大小的整数
# age = 18
# print(age)
检测数据的数据类型:type(要检测的数据)
# print(type(age))    <class 'int'>


整型可以表示非常大/小的数
# num = -1000
# print(num, type(num))   结果-1000  <class 'int'>

2) 浮点型 float
用于存储带有小数部分的数值.
定义浮点型变量
# height = 1.83
# print(height, type(height))   结果 1.83 <class 'float'>

浮点型可以非常大或非常小
# num = 1234567890123456789012345.0
# print(num, type(num))   
结果1.2345678901234568e+24 表示1.2345678901234568乘以10的24次方

3) 布尔型 bool
只有两个明确且固定的值:True(真) False(假),它通常用于逻辑判断\条件控制等编程场景.
# v1 = True
# print(v1, type(v1))  结果是 True <class 'bool'>

# v2 = False
# print(v2, type(v2)) 结果 False <class 'bool'>

注意:① 布尔类型的数据值True和False是严格区分大小写的.
# print(type(False))   # <class 'bool'>
# print(type(false))   # 标识符/变量名《====这里会报错

② 布尔值在需要时可以被隐式地转换为整型(int),其中True被当作整数1处理,而False被当作整数0处理,这种隐式转换在参与数学运算\进行条件判断以及循环控制等场景中非常有用.
# print(True + 2)    # True 被当作 整数1 处理  结果是3
# print(False - 3)   # False 被当作 整数0 处理 结果是-3

4) 复数型 complex  --了解
是一个基础性的数学概念,由实部和虚部组成
广泛应用于数据计算领域.

定义复数型变量
# c = 2 + 3j       # j(或J)在复数中作为固定地虚数单位,不可更改
# print(c, type(c))   结果是(c=2+3j) <class 'complex'>

字符串 str
以单引号\双引号或三引号界定的数据,用于存储和表示文本信息,其中三引号特别适用于包含多行内容的字符串.
定义字符串类型的数据
(1)使用单引号
# s = 'Hello World'
# print(s, type(s))   结果是Hello World <class 'str'>

(2)使用双引号
# s2 = "Hello World!"
# print(s2, type(s2))   结果是Hello World! <class 'str'>

(3)使用三引号(多行字符串)
# s3 = '''这是一个
多行字符串'''
# print(s3, type(s3))   结果是 这是一个
                                                多行字符串  <class 'str'>

使用三引号(另一种形式)
# s4 = """这也是一个
多行字符串"""
# print(s4, type(s4))      结果是 这也是一个
                                                多行字符串  <class 'str'>

格式化输出:含义
通过将值插入字符串占位符来生成格式化的字符串,让数据更加清晰\易读,并符合特定格式.

实现方式
1) % 操作符
# name = "lzy"
# age = 18
# 输出: lzy今年18岁了!
# print(name, "今年", age, "岁了!", sep="")
# print("%s今年%d岁了!" % (name, age))

2) str.format()
# name = "lzy"
# age = 18
# print("{}今年{}岁了!".format(name, age))

3) f-string
# f-string是Python 3.6版本中引入的一种新的字符串格式化方法.它们提供了一种简洁\直观且性能优异的方式来嵌入变量和表达式的值到字符串中,该方法简单易读.
① 基本使用
# f-string通过在字符串前加上f或F来标识,并允许在字符串中直接嵌入表达式.
表达式被大括号{}包围,其计算结果将被转换为字符串并插入到相应的位置.
# name = "lzy"
# age = 18
# 输出:lzy今年18岁了!
# print(f"{name}今年{age}岁了!")
# print(F"{name}今年{age}岁了!")


② 支持表达式
# f-string支持在字符串中嵌入任意的Python表达式,包含函数调用\算术运算\属性访问等.
# n1 = 3
# n2 = 4
# 输出:3 * 4 = 12  3 + 4 = 12
# print(f"{n1} * {n2} = {n1 * n2}")     
# print(f"{n1} + {n2} = {n1 + n2}")


③ 设置整数位数
# 对于整数,可以设置其显示的最小宽度,并使用0或空格作为填充字符来达到这个宽度.
# sid = 1
# 输出:我的学号:001
# print(f"我的学号:{sid:3d}")    # 3d:表示3位数,不足默认前面补空格   我的学号:  1
# print(f"我的学号:{sid:03d}")   # 03d:表示3位数,不足默认前面补0  我的学号:001

④ 保留小数精度
# 对于浮点数,可以通过指定小数点后的位数来保留精度.
# pi = 3.141592653589793
# print(f"pi保留两位小数:{pi:.2f}")   # .2f:保留2位小数,超出2位小数则遵循四舍五入规则  pi保留两位小数:3.14

# num = 3.14
# print(f"num保留4位小数:{num:.4f}")   # .4f:保留4位小数,不足4位小数则后面补0   num保留4位小数:3.1400

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

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

相关文章

深度学习 Deep Learning 第1章 深度学习简介

第1章 深度学习简介 概述 本章介绍人工智能&#xff08;AI&#xff09;和深度学习领域&#xff0c;讨论其历史发展、关键概念和应用。解释深度学习如何从早期的AI和机器学习方法演变而来&#xff0c;以及如何有效解决之前方法无法应对的挑战。 关键概念 1. 人工智能的演变 …

解决Windows版Redis无法远程连接的问题

&#x1f31f; 解决Windows版Redis无法远程连接的问题 在Windows系统下使用Redis时&#xff0c;很多用户会遇到无法远程连接的问题。尤其是在配置了Redis并尝试通过工具如RedisDesktopManager连接时&#xff0c;可能会报错“Cannot connect to ‘redisconnection’”。今天&am…

Qt C++ 常用压缩库推荐 快速压缩 解压缩数据

在Qt C中&#xff0c;如果你需要快速压缩和解压缩数据&#xff0c;可以使用以下几种库&#xff1a; 1. zlib 简介: zlib 是一个非常流行的压缩库&#xff0c;支持 DEFLATE 压缩算法。它被广泛用于各种应用程序中&#xff0c;包括Qt。 集成: Qt 本身已经集成了 zlib&#xff0…

架构师面试(十五):熔断设计

问题 某电商平台经常需要在大促运营活动中暂停评论、退款等业务&#xff0c;基于服务治理的设计理念&#xff0c;我们需要对该电商平台微服务系统的【服务熔断】进行设计&#xff0c;对此下面描述中说法正确的有哪几项呢&#xff1f; A. 服务管控系统管理着平台中所有服务之间…

Navicat如何查看密码

近期遇到需要将大部分已存储的navicat数据库转发给其他人&#xff0c;于是乎进行导出文件 奈何对方不用navicat&#xff0c;无法进行文件的导入从而导入链接 搜罗navicat的密码查看&#xff0c;大部分都为php代码解析 以下转载GitHub上看到的一个python代码解析的脚本 这里是对…

力扣143重排链表

143. 重排链表 给定一个单链表 L 的头节点 head &#xff0c;单链表 L 表示为&#xff1a; L0 → L1 → … → Ln - 1 → Ln 请将其重新排列后变为&#xff1a; L0 → Ln → L1 → Ln - 1 → L2 → Ln - 2 → … 不能只是单纯的改变节点内部的值&#xff0c;而是需要实际的…

HarmonyOS NEXT个人开发经验总结

文章目录 1. 开发环境配置1.1 工具链安装流程1.2 环境配置代码 2. 项目架构设计2.1 分层架构图2.2 模块化配置 3. 核心开发实践3.1 声明式UI开发3.2 分布式数据管理 4. 性能优化策略4.1 性能优化流程图4.2 优化实践代码 5. 安全与权限管理5.1 权限申请流程5.2 安全存储示例 6. …

golang快速上手基础语法

变量 第一种&#xff0c;指定变量类型&#xff0c;声明后若不赋值&#xff0c;使用默认值0 package mainimport "fmt"func main() {var a int //第一种&#xff0c;指定变量类型&#xff0c;声明后若不赋值&#xff0c;使用默认值0。fmt.Printf(" a %d\n"…

【MySQL】多表操作 —— 外键约束

目录 多表关系一对一关系一对多/多对一关系多对多关系 外键约束基本概念一对多/多对一创建外键约束外键约束下的数据操作数据插入数据删除 删除外键约束 多对多创建外键约束外键约束下的数据操作数据插入数据删除 删除外键约束 多表关系 MySQL 多表之间的关系可以概括为&#…

从被动响应到主动预见:智能可观测性技术的变革与实践

思维导图 一、引言 🌃 想象一下,在一个深夜 🌙,你的关键业务系统突然出现故障 🚨。传统情况下,你可能会收到大量不相关的告警 📱💬💬💬,然后花费数小时甚至数天时间 ⏳,在错综复杂的系统架构中寻找根本原因 🔍。而在智能可观测性的世界里,故障发生前系统…

【GPT入门】第22课 langchain LCEL介绍

【GPT入门】第22课 langchain LCEL介绍 1. LCEL介绍与特点2. 原生API与LCEL的对比2. 简单demo 1. LCEL介绍与特点 LCEL 即 LangChain Expression Language&#xff0c;是 LangChain 推出的一种声明式语言&#xff0c;用于简化和优化在 LangChain 框架内构建复杂链和应用的过程…

7、基于osg引擎实现读取vtk数据通过着色器实现简单体渲染(1)

基于光线投射原理实现的体渲染 一、什么是体绘制&#xff1f;二、为什么不直接用3D模型渲染三、原理及部分代码解析1、什么是光线&#xff1f;2、什么是光线投射&#xff1f;3、为什么需要光线投射3D纹理&#xff1f;4、为什么必须是3D纹理&#xff1f;5、为什么还需要1D纹理&a…

在 Windows 上使用 choco 安装 mkcert 并配置 Vue 运行HTTPS

解决在Windows上使用Vue本地运行HTTPS的问题,vue-cli或vite都可以使用 步骤 1&#xff1a;确认 Chocolatey 是否已安装 1. 检查 choco 命令是否可用 打开 PowerShell&#xff08;管理员权限&#xff09;&#xff0c;输入&#xff1a; choco -v如果显示版本号&#xff08;如…

spring声明式事务原理01-调用第1层@Transactional方法(事务访问入口)

文章目录 【README】【步骤1】UserAppService调用userSupport.saveNewUser()【步骤2】获取到TransactionInterceptor【步骤3】chain不为空&#xff0c;接着执行CglibMethodInvocation#proceed方法【补充】AopContext作用 【步骤4】CglibMethodInvocation#proceed方法【步骤5】调…

Qt-D指针与Q指针的设计哲学

文章目录 前言PIMLP与二进制兼容性D指针Q指针优化d指针继承Q_D和Q_Q 前言 在探索Qt源码的过程中会看到类的成员有一个d指针&#xff0c;d指针类型是一个private的类&#xff0c;这种设计模式称为PIMPL&#xff08;pointer to implementation&#xff09;&#xff0c;本文根据Q…

数据结构——单链表list

前言&#xff1a;大家好&#x1f60d;&#xff0c;本文主要介绍数据结构——单链表 目录 一、单链表 二、使用步骤 1.结构体定义 2.初始化 3.插入 3.1 头插 3.2 尾插 3.3 按位置插 四.删除 4.1头删 4.2 尾删 4.3 按位置删 4.4按值删 五 统计有效值个数 六 销毁…

基于PHP的网店进销存管理系统(源码+lw+部署文档+讲解),源码可白嫖!

摘要 相比于以前的传统进销存管理方式&#xff0c;智能化的管理方式可以大幅降低进销存管理的运营人员成本&#xff0c;实现了进销存管理的标准化、制度化、程序化的管理&#xff0c;有效地防止了商品信息及仓库信息的随意管理&#xff0c;提高了信息的处理速度和精确度&#…

Vue3 Pinia $subscribe localStorage的用法 Store的组合式写法

Vue3 Pinia $subscribe 可以用来监视Stroe数据的变化 localStorage的用法 localStorage中只能存字符串&#xff0c;所有对象要选转成json字符串 定义store时&#xff0c;从localStorage中读取数据talkList可能是字符串也可能是空数组 Store的组合式写法 直接使用reactiv…

【PHP】获取PHP-FPM的状态信息

文章目录 一、前言二、环境三、过程1&#xff09;修改PHP-FPM配置文件2&#xff09;修改Nginx配置文件3&#xff09;访问页面4&#xff09;修改状态页面端口 一、前言 PHP-FPM内置有一个状态页面&#xff0c;通过这个页面可以获取到FPM的一些状态信息&#xff08;见下图&#…

(性能测试)性能测试工具 2.jmeter的环境搭建 3jmeter元件和4使用实例 5jmeter元件和参数化

目录 性能测试工具 性能测试工具 jemeter环境搭建 jmeter的常用目录介绍 jmeter修改语言和主题--jmeter界面的汉化 jmeter元件 jmeter元件和组件的介绍 jmeter的作用域原则 jmeter的执行顺序 案例&#xff1a;执行顺序 jmeter使用案例 jmeter线程组的介绍 jmeter…