python学习笔记1-变量

  1. 变量就是⽤来存储数据的;
  2. 变量的声明每个变量在使⽤前都必须赋值,变量赋值以后该变量才会被创建。                      语法:变量名 = 变量值,等号前后给留有空格,示例:
name = 'Jimmy'
age = 18
major = '计算机'
education = 'master'
price = 10.5

3.在程序中,变量的值是可以改变的,所以叫变量,不能改变的叫常量; 

4.python没有专⻔的常量类型,⼀般约定俗成使⽤⼤写表⽰常量,示例:

# 圆周率
PI = 3.1415926
# 我的⽣⽇
MY_BIRTHDAY = '1992-01-09'

5. 在程序中,如果要输出变量的内容,需要使⽤ print 函数

print(name)
print(age)

6.多个变量的定义:

# 多个变量的值相同
num1 = num2 = num3 = 10
# 多个变量的值不同,元组赋值
a, b = 10, 20

7.变量的修改

# 跨年
year= 2024
print(year)
year= 2025
print(year)
不同类型的变量也可以进⾏修改、重新赋值,与类型⽆关。
# 定义价格
money = '⼗元'
money = '10'
print(money)

8.变量的运算

# 定义苹果价格变量
price = 5
# 定义购买重量
weight = 2
# 计算⾦额
money = price * weight
# 只要买苹果就返 5 元
money = money - 5
print(money)

9.标⽰符就是程序员定义的 变量名、函数名 ,名字需要有⻅名知义的效果

# 不规范命名
a = '⻓江⼤桥'
# 规范命名
bridge = '⻓江⼤桥'
标⽰符可以由字⺟、下划线和数字组成
不能以数字开头
不能与关键字重名
Python中的标识符是区分⼤⼩写的
关键字
关键字就是在 Python 内部已经使⽤的标识符
关键字具有特殊的功能和含义
开发者 不允许定义和关键字相同的名字的标⽰符
通过以下命令可以查看 Python 中的关键字
import keyword
print(keyword.kwlist)

python中的关键字:

变量的命名规则
命名规则 可以被视为⼀种 惯例,并⽆绝对与强制
⽬的是为了 增加代码的识别和可读性
1. Python 中,如果 变量名需要由⼆个或多个单词 组成时,可以按照以下⽅式命名
a. 每个单词都使⽤⼩写字⺟
b. 单词与单词之间使⽤ _ 下划线 连接
例如: first_name last_name qq_number qq_password
驼峰命名法
当 变量名 是由⼆个或多个单词组成时,还可以利⽤驼峰命名法来命名
⼩驼峰式命名法
第⼀个单词以⼩写字⺟开始,后续单词的⾸字⺟⼤写
例如: firstName lastName
⼤驼峰式命名法
每⼀个单词的⾸字⺟都采⽤⼤写字⺟
例如: FirstName LastName CamelCase
好的变量命名⻛格应该⻅名知意,有意义。
⻅名知意,有⾃描述性
不建议使⽤中⽂命名变量
变量删除(了解)
删除变量删除后变量就不存在了,不能够再通过变量名进⾏存取了。语法:
del 变量名
命名空间(了解)
运⾏python代码时,内存中分为命名空间和数据空间
命名空间中存储的是数据存放的地址,类似于⽼师的花名册
数据空间中存储真实的数据值,类似于每个学⽣的真实座位
name = 'mia'
print(name)
print(id(name))
变量类型
在 Python 中定义变量是 不需要指定类型(在其他很多⾼级语⾔中都需要)
我们可以使⽤type和isinstance来测试和判断数据类型
type(obj)
功能:返回obj的数据类型
参数:obj是你要测试变量或数值
⽰例:
age = 10
name = 'hello'
print(type(name), type(age))
#判断变量是否是指定类型
if type(age) is int:
     print('是')
else:
     print('否')
isinstance
isinstance(obj,typename)
功能:判断obj是否是指定类型,是返回True,否返回False
参数: obj
obj是你要判断的变量或数值
typename是指定数据类型,可以是int,float,str等。也可是⼀个类型的元组,例如:(int,float)
age = 10
name = 'hello'
print(isinstance(age,int))
print(isinstance(name,(str,int)) #只要name是str或int的⼀种就返回True
if isinstance(age,int):
   print('是')
else:
   print('否')
# type和isinstance的区别
# type判断基本类型是没问题的,但⽆法判断⼦类对象是⽗类的⼀种
# isinstance可以判断⼦类对象是⽗类的⼀种

class A:
     pass
class B(A):
     pass
objA = A()
objB = B()

#输出否
if type(objB) is A:
    print('是')
else:
    print('否')
print(isinstance(objB,A)) #True
结论:优先使⽤isinstance

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MySQL数据库中的编码类型:深入探索与实践

在数字化时代,数据库不仅是数据存储的核心,更是数据交换与处理的基石。MySQL,作为开源关系型数据库管理系统中的佼佼者,其编码类型的正确配置对于确保数据的完整性、提升性能及支持国际化至关重要。本文旨在深入探讨MySQL数据库中…

C语言进阶习题【1】指针和数组(4)——指针笔试题3

笔试题5:下面代码输出是是什么? int main() {int a[5][5];int(*p)[4];p a;printf( "%p,%d\n", &p[4][2] - &a[4][2], &p[4][2] - &a[4][2]);return 0; }分析 代码结果 笔试题6:下面代码输出是是什么&#xff1…

计算机网络 (53)互联网使用的安全协议

一、SSL/TLS协议 概述: SSL(Secure Sockets Layer)安全套接层和TLS(Transport Layer Security)传输层安全协议是工作在OSI模型应用层的安全协议。SSL由Netscape于1994年开发,广泛应用于基于万维网的各种网络…

c++算法贪心系列

本篇文章,同大家一起学习贪心算法!!! 第一题 题目链接 2208. 将数组和减半的最少操作次数 - 力扣(LeetCode) 题目解析 本题重点:最终的数组和要小于原数组和的一半,且求这一操作的…

NewStar CTF week1 web wp

谢谢皮蛋 做这题之前需要先去学习一些数据库的知识 1 order by 2 1可以理解为输入的id,是一个占位符,按第二列排序用来测试列数,如果没有两列则会报错-1 union select 1,2 -1同样是占位符,union的作用是将注入语句合并到原始语句…

【2025小年源码免费送】

💖学习知识需费心, 📕整理归纳更费神。 🎉源码免费人人喜, 🔥码农福利等你领! 💖山高路远坑又深, 📕大军纵横任驰奔, 🎉谁敢横刀立马行…

在Qt中实现点击一个界面上的按钮弹窗到另一个界面

文章目录 步骤 1:创建新窗口类步骤 2:设计窗口的 UI步骤 3:设计响应函数 以下是一个完整的示例,展示在Qt中如何实现在一个窗口中通过点击按钮弹出一个新窗口。 步骤 1:创建新窗口类 假设你要创建一个名为 WelcomeWidg…

基于AutoDL云计算平台+LLaMA-Factory训练平台微调本地大模型

1. 注册与认证 访问AutoDL官网:前往 AutoDL官网。 注册账号:完成注册流程。 实名认证:按照要求完成实名认证,以确保账号的合规性。 2. 选择GPU资源 进入算力市场:在官网首页点击“算力市场”菜单。 挑选GPU&#x…

智慧金融合集:财税资金数据管理一体化大屏

随着科技的快速进步和数字化转型的加速,金融、税务等机构和企业面临的数据量呈现出爆炸式增长。传统的数据分析方法早已无法胜任现代业务的需求。为此,许多机构开始尝试创新的软件工具来更好的管理繁琐的数据。 通过图扑软件的数据可视化大屏&#xff0c…

基于springboot社区医疗后台管理系统

基于Spring Boot的社区医疗后台管理系统是一种专为社区医疗机构设计的管理工具,旨在提高医疗服务的质量和效率。 一、系统背景与目的 社区医疗作为基层医疗服务的重要组成部分,承担着为社区居民提供基本医疗服务和公共卫生服务的重任。然而&#xff0c…

基于quartz,刷新定时器的cron表达式

文章目录 前言基于quartz,刷新定时器的cron表达式1. 先看一下测试效果2. 实现代码 前言 如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。   而且听说点赞的人每天的运气都不会太差&…

63,【3】buuctf web Upload-Labs-Linux 1

进入靶场 点击pass1 查看提示 既然是上传文件&#xff0c;先构造一句话木马&#xff0c;便于用蚁剑连接 <?php eval($_POST[123])?> 上传木马 文件后缀写为.php.jpg 右键复制图片地址 打开蚁剑连接 先点击测试连接&#xff0c;显示成功后&#xff0c;再点击添加即可 …

Linux操作命令之云计算基础命令

一、图形化界面/文本模式 ctrlaltF2-6 图形切换到文本 ctrlalt 鼠标跳出虚拟机 ctrlaltF1 文本切换到图形 shift ctrl "" 扩大 ctrl "-" 缩小 shift ctrl "n" 新终端 shift ctrl "t" 新标签 alt 1,…

计算机毕业设计hadoop+spark视频推荐系统 短视频推荐系统 视频流量预测系统 短视频爬虫 视频数据分析 视频可视化 视频大数据 大数据

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…

【智能解析多线程:线程安全与死锁的深度剖析】

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” 文章目录 温故而知新线程安全问题多线程中有的线程未加锁一个线程有多把锁加了多层锁的代码&#xff0c;执行…

Grafana系列之面板接入Prometheus Alertmanager

关于Grafana的仪表板Dashboard&#xff0c;以及面板Panel&#xff0c;参考Grafana系列之Dashboard。可以直接在面板上创建Alert&#xff0c;即所谓的Grafana Alert&#xff0c;参考Grafana系列之Grafana Alert。除了Grafana Alert外&#xff0c;面板也可接入Prometheus Alertma…

【深度学习入门】深度学习知识点总结

一、卷积 &#xff08;1&#xff09;什么是卷积 定义&#xff1a;特征图的局部与卷积核做内积的操作。 作用&#xff1a;① 广泛应用于图像处理领域。卷积操作可以提取图片中的特征&#xff0c;低层的卷积层提取局部特征&#xff0c;如&#xff1a;边缘、线条、角。 ② 高层…

数据结构 链表2

目录 前言&#xff1a; 一&#xff0c;反转一个链表(迭代) 二&#xff0c;打印一个链表&#xff08;递归&#xff09; 三&#xff0c;反转一个链表(递归) 四&#xff0c;双向链表 总结 前言&#xff1a; 我们根据 [文章 链表1] 可以知道链表相比较于数组的优缺点和计算机…

curl简介与libcurl开源库的使用总结

curl工具和libcurl不是同一个东西&#xff0c;二者的关系主要体现在以下方面&#xff1a; 定义与性质 curl工具&#xff1a; 是一个利用URL语法在命令行下工作的文件传输工具&#xff0c;1997年首次发行。它支持多种协议&#xff0c;如HTTP、HTTPS、FTP、FTPS等&#xff0c;可用…

node.js 07.npm下包慢的问题与nrm的使用

一.npm下包慢 因为npm i 默认从npm官网服务器进行下包,但是npm官网服务器是海外服务器所以响应很慢. 于是我们通过npm下包的时候通常用淘宝镜像进行下包,下面是切换到淘宝镜像地址下包的操作. 二.nrm的使用 nrm是一个管理切换npm下包地址的工具,可以快速切换下包的地址. 安…