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这样的语言是不允许这样的操作,一个变量定义后类型就是固定的了,这种特性叫做"静态类型"

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

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

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

相关推荐
我命由我1234537 分钟前
Spring Boot 自定义日志打印(日志级别、logback-spring.xml 文件、自定义日志打印解读)
java·开发语言·jvm·spring boot·spring·java-ee·logback
蹦蹦跳跳真可爱5892 小时前
Python----计算机视觉处理(Opencv:道路检测之提取车道线)
python·opencv·计算机视觉
徐小黑ACG2 小时前
GO语言 使用protobuf
开发语言·后端·golang·protobuf
0白露3 小时前
Apifox Helper 与 Swagger3 区别
开发语言
Tanecious.4 小时前
机器视觉--python基础语法
开发语言·python
叠叠乐4 小时前
rust Send Sync 以及对象安全和对象不安全
开发语言·安全·rust
ALe要立志成为web糕手4 小时前
SESSION_UPLOAD_PROGRESS 的利用
python·web安全·网络安全·ctf
Tttian6225 小时前
Python办公自动化(3)对Excel的操作
开发语言·python·excel
蹦蹦跳跳真可爱5896 小时前
Python----机器学习(KNN:使用数学方法实现KNN)
人工智能·python·机器学习
独好紫罗兰6 小时前
洛谷题单2-P5713 【深基3.例5】洛谷团队系统-python-流程图重构
开发语言·python·算法