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

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

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

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

相关推荐
l1t1 分钟前
与系统库同名python脚本文件引起的奇怪错误及其解决
开发语言·数据库·python
Jackey_Song_Odd5 分钟前
Part 1:Python语言核心 - 内建数据类型
开发语言·python
切糕师学AI13 分钟前
编程语言 Erlang 简介
开发语言·erlang
sycmancia14 分钟前
C++——C++中的类型识别
开发语言·c++
带娃的IT创业者14 分钟前
WeClaw WebSocket 连接中断诊断:从频繁掉线到稳定长连的优化之路
python·websocket·网络协议·php·fastapi·实时通信
还是大剑师兰特15 分钟前
Vue3 按钮切换示例(启动 / 关闭互斥显示)
开发语言·javascript·vue.js
GinoWi17 分钟前
Chapter 5 Python中的元组
python
星空露珠18 分钟前
迷你世界UGC3.0脚本Wiki角色模块管理接口 Actor
开发语言·数据库·算法·游戏·lua
我星期八休息18 分钟前
深入理解哈希表
开发语言·数据结构·c++·算法·哈希算法·散列表
寻寻觅觅☆34 分钟前
东华OJ-进阶题-19-排队打水问题(C++)
开发语言·c++·算法