Python编程学习笔记(1)--- 变量和简单数据类型
1、变量
在学习编程语言之前,所接触的第一个程序,绝大多数都是:
print("Hello world!")
接下来尝试使用一个变量。在代码中的开头添加一行代码,并对第二行代码进行修改,如下:
message = "Hello World!"
print(message)
这个程序运行的结果为:

我们添加一个名为message的变量。每一个变量都指向一个值———与该变量相关联的信息。
1.1 变量的命名和使用
在Python中使用变量时,需要遵守一些规则和指南。违反这些规则和指南将会出现错误。
变量的规则:
1、变量名只能包含字母、数字和下划线。变量名能以字母或下划线开头,但是不是以数字开头。
2、变量名不能包含空格,但能使用下划线来分隔其中的单词。
3、不要将Python关键字和函数名用作变量名。既不要使用Python保留用于特殊用途的单词。
| 关键字/内置函数 | 描述 |
|---|---|
False | 布尔值假 |
None | 表示空值的特殊对象 |
True | 布尔值真 |
and | 逻辑与运算符 |
as | 导入时重命名 |
assert | 断言语句 |
async | 定义异步函数 |
await | 暂停函数执行,等待异步操作完成 |
break | 跳出最近的循环 |
class | 定义类 |
continue | 跳到循环的开始 |
def | 定义函数 |
del | 删除对象 |
elif | 条件语句的"else if" |
else | 条件语句的"else" |
except | 异常处理 |
finally | 无论是否发生异常都会执行 |
for | 用于循环 |
from | 导入模块或模块中的成员 |
global | 声明全局变量 |
if | 条件语句 |
import | 导入模块 |
in | 成员测试运算符 |
is | 身份运算符 |
lambda | 定义匿名函数 |
nonlocal | 声明非局部变量 |
not | 逻辑非运算符 |
or | 逻辑或运算符 |
pass | 空操作,不做任何事情 |
raise | 抛出异常 |
return | 从函数返回值 |
try | 尝试执行代码 |
while | 循环直到条件不再为真 |
with | 管理上下文,使用资源 |
yield | 生成器函数中的返回值 |
4、变量名应即简单又具有描述性,容易辨别。
5、慎用小写字母l和大写字母O,因为他们可能会出现误导。
1.2 变量时标签
变量常被描述为用于存储值的盒子。这刚接触到变量时,这种定义可能会很有帮助,但并没有准确描述Python内部表示变量的方式。一种好得多的定义是,变量是可以赋给值的标签,也可以说变量指向特定的值。
2、字符串
字符串就是一系列字符。在Python中,用引号括起来的都是字符串,其中的引号可以是单引号也可以是双引号,如下所示:
"This is a string."
'This is also a string.'
2.1 使用字符串的方法和修改字符串的大小写
对于字符串来说,可执行的最简单的操作之一就是修改其中的单词的大小写。代码如下:
name = "ada lavende!"
print(name.title())

实验结果表示:其中的变量name指向小写的字符串"ada lavende!"。在函数print()中出现在这个变量的后面的title()函数。方法是Python可对数据执行的操作。在name.title()中,name后面的点(.)让Python对变量name执行方法title()指定数据执行的操作。即使用方法title()以首字母大写的方式显示每个单词,即为将每个单词的首字母都改为大写。
其还有其他的大小写处理方法。列如,要将字符串改为全部大写或者全部小写,可以这样做:
name = "ada lavende!"
print(name.upper())
print(name.lower())

2.2 在字符串中使用变量
在学习过变量和字符串之后,就有个问题摆在面前,如何在字符串中使用变量了?列如,使用两个变量分别表示名和姓,然后合并这两个值以显示姓名:
first_name = "ada "
last_name = "lavende!"
full_name =f"{first_name}{last_name}"
print(full_name)
![]()
要在字符串中插入变量的值,要在引号外面加入字母f,再将要插入的变量放在花括号内。这样,当Python显示字符串时,将把每一个变量都替换为其值。
这种字符串名为f字符串。f是format(设置格式)的简写,因为Python通过花括号内的变量替换为其他值来设置字符串的格式。
注意:f字符串时Python3.6引进的。在这个版本一下的,需要使用format()方法,而不能使用f语法。
2.3 使用制表符或换行符来添加空白
在编程中,空白泛指任何非打印字符,如空格、制表符和换行符。
要在字符串中添加制表符,可以使用字符组合\t.

要在字符串中添加换行符,可以是使用字符组合\n:

这两个可以自由配合使用。
2.4 删除空白
在程序中,额外的空白可能令人迷惑。容易会出现肉眼无法察觉的问题,在Python中可以找到字符串开头和末尾的多余空白。要确保字符串末尾没用空白,可使用方法rstrip()。
注意:这种删除只是暂时的,接下来再次访问name的值时依旧会有多余的空白。
除此之外还有剔除字符串开头和空白,或者同时剔除字符串两边的空白。对此使用的方法为:
lstrip()和strip()
3 数
3.1 整数
在Python中,对整数执行加、减、乘、除四则运算。

在终端会话中,Python直接返回结果。在Python中两个**表示次方。

3.2 浮点数
Python将所有带小数点的数称之为浮点数。大多数编程语言使用了这个术语,在很大程度上来讲:使用浮点数时无须考虑其行为。只需要输入使用的数,Python通常会按照你所期待的方式处理他们:

如事例三,结果包含的小数位数可能是不确定的。
3.3 整数和浮点数
将任意两个数相除时,结果总是浮点数,即便这两个数都是整数且能整除:

在其他任何运算中,如果一个操作数是整数,另一个操作数是浮点数,结果也总是浮点数:

3.4 数中的下划线
书写很大的数时,可使用下划线将其中的数字分组,使其更加清晰易读:

3.5 同时给多个变量赋值
列如:
x,y,z = 0,0,0
3.6 常量
常量类似于变量,但其值在程序的整个生命周期内保持不变。但Python程序员会使用全大写来指出应将某一个变量视为常量,其值应始终不变:
MAX_COUNTS = 500
4 注释
在大多数编程语言中,注释是一项很有用的功能。在Python中,注释用(#)标识。使用#号后面的内容都会被Python解释器忽略。
相关文章:
Python编程学习笔记(1)--- 变量和简单数据类型
1、变量 在学习编程语言之前,所接触的第一个程序,绝大多数都是: print("Hello world!") 接下来尝试使用一个变量。在代码中的开头添加一行代码,并对第二行代码进行修改,如下: message "…...
第二证券:资金抱团“高股息”,超三成A股年内创历史新低!
A股商场行情冰火两重天。 “预制菜榜首股”跌破发行价 7月8日,味知香盘中最低跌至19.26元/股,股价跌破发行价,并创前史新低。揭露资料显现,公司是集研发、生产、销售为一体的半成品菜企业,现在具有8大产品系列&#…...
ASAN排查程序中内存问题使用总结
简介 谷歌有一系列Sanitizer工具,可用于排查程序中内存相关的问题。常用的Sanitizer工具包括: Address Sanitizer(ASan):用于检测内存使用错误。Leak Sanitizer(LSan):用于检测内存…...
day01:项目概述,环境搭建
文章目录 软件开发整体介绍软件开发流程角色分工软件环境 外卖平台项目介绍项目介绍定位功能架构 产品原型技术选型 开发环境搭建整体结构:前后端分离开发前后端混合开发缺点前后端分离开发 前端环境搭建Nginx 后端环境搭建熟悉项目结构使用Git进行版本控制数据库环…...
Python爬虫与数据可视化:构建完整的数据采集与分析流程
Python爬虫技术概述 Python爬虫是一种自动化的数据采集工具,它可以模拟浏览器行为,访问网页并提取所需信息。Python爬虫的实现通常涉及以下几个步骤: 发送网页请求:使用requests库向目标网站发送HTTP请求。获取网页内容…...
Java---包装类与泛型
1.包装类 1.1 包装类 在Java中,由于基本数据类型不是继承Object类,为了在泛型代码中可以支持基本数据类型,Java给每个基本数据类型各自提供了一个包装类。 如下图 除了char和int基本数据类型的包装类型有点特别,其他的都是首字…...
如何优化 PostgreSQL 中对于复杂数学计算的查询?
文章目录 一、理解复杂数学计算的特点二、优化原则(一)索引优化(二)查询重写(三)数据库配置调整(四)使用数据库内置函数的优势 三、具体的优化方案和示例(一)…...
前端面试题27(在实际项目中,如何有效地利用Vue3的响应式系统提高性能?)
在实际项目中,有效利用Vue3的响应式系统提高性能主要涉及以下几个关键点: 1. 合理使用reactive和ref reactive:用于将复杂的数据结构(如对象或数组)转换成响应式版本。确保只将需要实时更新的数据结构声明为响应式&am…...
掌握Vue 3生命周期:从组合式API到高效代码实践
引言 在 Vue 3 中,生命周期的概念得到了进一步的优化和简化。Vue 3 引入了组合式 API(Composition API),这为开发者提供了更灵活的方式来组织和重用代码逻辑。与传统的选项式 API(Options API)相比&#x…...
使用cgroup对pgsql进行分库资源限制
系统:Centos7 pg版本:14.11 自建pgsql14中有很多个库,一个库对应一个租户,偶尔会出现单个租户执行慢sql影响全局的问题,目前官方也没有比较合适的处理方案或者插件 解决方案: 因为pgsql是多进程应用,所以正好可以使用linux自带的cgroup功能进行资源限制。定时将进程中…...
【网络安全】一文带你了解什么是【网络劫持】
网络劫持(Network Hijacking)是一种网络攻击,攻击者通过非法手段劫持网络通信,导致合法用户的数据流被拦截、篡改或重定向到攻击者控制的系统。这种攻击可以在各种网络层面上进行,包括域名系统(DNS…...
springcloud分布式架构网上商城 LW +PPT+源码+讲解
3系统分析 3.1可行性分析 在开发系统之前要进行系统可行性分析,目的是在用最简单的方法去解决最大的问题,程序一旦开发出来满足了用户的需要,所带来的利益也很多。下面我们将从技术、操作、经济等方面来选择这个系统最终是否开发。 3.1.1技术…...
【Linux】动态库的制作与使用
💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …...
Vue框架引入
vue简介 1.1.vue是什么?Vue官网 英文官网: https://vuejs.org/中文官网: https://cn.vuejs.org/ vue是一套构建用户界面的渐进式javascript框架 构建用户界面:将我们手里拿到的数据通过某种办法变成用户可以看见的界面前端工程师的职责:就是在合适的时候发出合适的请求,然后…...
贝叶斯估计(1):期末大乱炖
写在前面! 1 先验分布和后验分布 三种信息:总体信息、样本信息、先验信息 总体信息:“总体是正态分布”;样本信息:总体抽取的样本提供的信息,是最新鲜的信息;先验信息:在抽样之前就…...
电脑找回彻底删除文件?四个实测效果的方法【一键找回】
电脑数据删除了还能恢复吗?可以的,只要我们及时撤销上一步删除操作,还是有几率找回彻底删除文件。 当我们的电脑文件被彻底删除后,尽管恢复的成功率可能受到多种因素的影响,但仍有几种方法可以尝试找回这些文件。本文整…...
java开发报错
查了一下啊。...
基于python 的动态虚拟主机
内容动态,内容通过程序的执行结果返回。 通过编写脚本,完成配置,实现访问页面返回Hello World。 实现步骤: 1、安装python模块 dnf install python3-mod_wsgi 2、编写脚本 在/var/www/cgi-bin/目录下编写脚本: vim…...
绝地求生PUBG没有开始游戏按钮的解决办法
绝地求生是一款特别热门的战术竞技型射击类游戏,游戏中玩家需要在游戏地图上收集各种资源,并在不断缩小的安全区域内持武器对抗其他玩家,让自己生存到最后。当游戏最后场上只剩下一支队伍的时候即可获得游戏胜利。然而一些玩家在游玩绝地求生…...
开始尝试从0写一个项目--前端(一)
基础项目构建 创建VUE初始工程 确保自己下载了node.js和npm node -v //查看node.js的版本 npm -v //查看npm的版本 npm i vue/cli -g //安装VUE CLI 创建 以管理员身份运行 输入:vue ui 就会进入 点击创建 自定义项目名字,选择npm管理 结…...
Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)
目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...
【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...
剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...
srs linux
下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935,SRS管理页面端口是8080,可…...
跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...
保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...
