python基础语法(一)变量

目录

使用变量

变量的类型

整数

浮点数

字符串

布尔

其他


使用变量

读取变量的值

python 复制代码
a = 10
print(a)

修改变量的值

python 复制代码
a=20
print(a)

在Python中,需要注意的是,修改变量也是使用=运算,看起来和定义变量没有明显区别

当然,也可以把一个变量的值赋值给另一个变量

python 复制代码
a=10
b=20
a=b
print(a)

变量的类型

变量里面存储的不仅仅是数字,还可以存储其它种类的数据,为了区分不同种类的类型,我们引入了"类型"这样的概念

和C++/Java等语言不同,Python变量的类型不需要显式指定,而是在赋值的时候确定的

整数

python 复制代码
a=10
print(type(a))

type和print类似,也是python内置的函数,可以使用type来查看一个变量的类型

和C++/Java等语言不同,python的int类型变量,表示的数据范围是没有上限的,理论上只要内存无限大,就可以表示无限大小的数据

浮点数

python 复制代码
a=2.1
print(type(a))

和C++/Java等语言不同,python的小数只有float这一种类型,没有double类型,但是实际上,python的float就相当于C++/Java的double,表示双精度浮点型

关于单精度浮点数和双精度浮点数的问题,和单精度浮点数相比,双精度浮点数占用的内存空间更多,同时表示的数据精度更高,精确到小数点后15位

字符串

python 复制代码
a="hello"
print(type(a))

使用''或者""引起来的,叫做字符串,可以用来表示文本

在python中,单引号构成的字符串和双引号构成的字符串,没有区别,"hello"和'hello'是完全等价的

可以使用len函数来获取字符串的长度

python 复制代码
a="hello"
print(len(a))

可以使用+针对两个字符串进行拼接

python 复制代码
a = 'hello'
b = 'world'
print(a+b)

此处是两个字符串相加,不能拿字符串和整数/浮点数相加

字符串作为开发中最常用到的数据类型,支持的操作方式也是非常丰富的

布尔

布尔类型是一个特殊的类型,取值只有两种,True(真)和False(假)

布尔类型也是数学上的一个概念,我们初中就学过一个概念叫做命题,进一步的就可以判断命题的真假

python 复制代码
a =True
b=False
print(type(a))
print(type(b))

其他

除了上述的类型之外,python中还有list,tuple,dict,自定义类型等等

那为什么要有这么多的类型

(1)类型决定了数据在内存中占据多大空间

例如:float类型在内存中占据八个字节

(2)类型约定了能对这个变量做什么样的操作

例如:float/int类型的变量,可以进行+-*/等操作

而str类型的变量,只能进行+(并且行为是字符串拼接),不能进行-*/,但是还能使用len等其他操作

在python中,一个变量是什么类型,是可以在"程序运行"过程中发生的,这个特性叫做"动态类型"

python 复制代码
a=10
print(type(a))
a=0.5
print(type(a))

在程序执行过程当中,a的类型刚开始是int,后面变成了str

C/Java这样的语言是不允许这样的操作,一个变量定义后类型就是固定的了,这种特性叫做"静态类型"

动态类型特性是一把双刃剑

对于中小型程序,可以大大的解约代码量(比如写一段代码可以同时支持多种类型)

对于大型程序,则提高的模块之间的交互成本。

相关推荐
Flynt1 小时前
日涨4000星的OSINT工具,我拿Linus的用户名和一个随机字符串实测了一遍
python·安全
Evand J2 小时前
【MATLAB例程介绍】(17)永磁同步电机(PMSM)基于自适应无迹卡尔曼滤波(AUKF)的电流噪声在线估计。测量噪声协方差自适应与转速估计对比仿真
开发语言·matlab·卡尔曼滤波·无迹卡尔曼滤波·pmsm·电机滤波
BaiPeter3 小时前
ZPL文件预览
开发语言·c++
曲径海盗3 小时前
【Python 学习第 53 天】列表基础
python·学习笔记·编程入门
Dumbness4 小时前
群里 @ 机器人发"查订单",指令一条都没命中:微信群机器人在路由前漏掉的几步归一化
python·微信
用户1614840955454 小时前
用 M4 Pro 跑羽毛球视频 AI 分析(二):TrackNet MPS 加速 3.2 倍、卡尔曼滤波补漏与自动回合剪辑
python
用户4019925568614 小时前
基于对话树回溯的社媒评论流买方意图识别与噪音过滤实践
python
用户0332126663674 小时前
使用 Python 加密或解密 PDF 文档
python
小七-七牛开发者5 小时前
让 Go 走得更远:用 LLGo 打通 Go 与 C/C++/Python 生态
python·编程·编译器·llvm·llgo
CyrusYiVPP6 小时前
实测 Ollama 本地部署:我用 Python 搓了个离线问答机器人,Qwen4 27B 一到换个模型名就能用
人工智能·python