第二章--第一节:变量、字符串与数字
零、变量
- 什么是变量 变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。 因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。
- 变量例子
# 定义字符型变量
name = '张三'
# 打印name的结果将输出“张三”
print(name)
# 定义整型变量
a = 2
b = 0
b = a + 1
# 打印 b 将得出 3
print(b)
# 定义浮点型变量
c = 2.01
d = 3.1
# 打印 c+d的结果将得出5.1099999999999
print(c + d)
大家一定会疑问,2.01+3.1 应该是5.11吗,为什么控制台输出的是5.109999999呢?其实这是浮点数一个普遍的问题,浮点数并不能准确地表示十进制, 即便是最简单的数学运算,也会带来不可控制的后果。上述种种问题,就来自于计算机的cpu与浮点数的表示方式,我们自己在代码层面是没法控制的。 但是在某些环境中(比如财务统计),需要精确的浮点型,我们可使用python的decimal模块进行计算其中Decimal的参数必须是字符串,利用str函数将数字转换成字符串
from decimal import Decimal,getcontext
z = Decimal(str(c))+Decimal(str(d))
print(z)
在某些情况下需要精确到小数点后N位(精确度)则可以利用getcontext()设置精确度
getcontext().prec = 2
z = Decimal(str(c)) / Decimal(str(d))
print(z)
3.变量赋值的特殊方法 在第2个小结我们所看到的都是***变量 = 变量值***的方式复制,下面我们将看到另一种赋值方式
# 同一个值赋给多个变量
a = b = c = 2018
# 打印a、b、c的值都是2018
print(a)
print(b)
print(c)
# 多个不同的值赋给多个变量
a, b, name = 2017, 2018,'张三'
# 打印a、b、name 的值分别是2017、2018、张三
print(a)
print(b)
print(name)
注意: 变量可以接受大部分类型的值(数字、字符串、元祖、列表、字典、集合以及自定义类型)
一、字符串
1.创建字符串 字符串是常用的一种类型,在python中字符串的创建使用单引号(’)或双引号(")创建,例子如下:
# 创建字符串
name = '张三'
address = '北京市海淀区'
2.访问字符串中的内容 访问字符串有两种方式:一种是访问整个字符串;另一种是访问字符串中的某个字符
# 访问整个字符串,将输出北京市海淀区
print(address)
# 访问字符串中的内容,例如要访问第三个字到第六个字(包含第三个字和第六个字)
# 下面代码的取值方式将在后面的课程中讲解
print(address[2:6])
3.字符串更新 在一些特殊情况下需要更新字符串中的部分内容,我们可以将整个字符串替换成新的字符串,也可以通过要替换的字符的位置进行更新字符串, 下面我们通过第二种方式替换字符串,将海淀区替换为朝阳区,打印address后将获得北京市朝阳区
address = address[0:3] + '朝阳' + address[5:]
print(address)
4.字符串拼接 字符串拼接是我们常用的一种操作,下面看一下代码
first_name = 'jack'
last_name = 'chen'
name = first_name + ' ' + last_name
# 打印name结果将输出jack chen
print(name)
二、数字
1.创建数字 Python 数字数据类型用于存储数值,创建代码如下:
num = 10
2.所支持的类型
- 整型:没有大小限制
- 浮点型:由小数和整数已经小数点组成
- 复数:由实数部分和虚数部分构成 数据类型是不允许改变的,这就意味着如果改变数字数据类型 的值,将重新分配内存空间
3.创建三种类型的数字变量
int = 100
float = 100.0
complex = 100 + 20j
# 打印将分别输出100、100.0、(100+20j)
print(int)
print(float)
print(complex)
注意: 数值数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。
三、小结
在本节中主要介绍了变量和常用的两种数据类型,所讲解的这些内容基本上可以在日常开发中使用, 后面涉及到其他的相关操作将具体讲解。
注意: Python 的变量在开发过程中允许改变变量的类型,比如我们定义了一个整型变量a并赋值等于10,在使用过程中我们又将a的值改为’张三’,这样就改变了变量的类型。但是不推荐在实际开发过程中改变变量的类型,这样会造成程序代码的可读性变差,而且容易出错。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Asp.net Core 使用Jenkins + Dockor 实现持续集成、自动化部署(四):发布与回滚
- linux centos 安装Jenkins(非docker方式)
- mysql5.7 derived_merge=on 弄丢了我的 order by!
- 用nrm轻松管理npm镜像 自用 实践笔记
- 模拟战役(DFS||并查集解法)
- 学会这些(滑动关机、应用多开、QQ微信消息攻击、表白神器),逼格瞬间提升1000倍
- 位数问题
- 题目 2229: [蓝桥杯][算法训练]最大最小公倍数
- 武汉工程大学2020GPLT选拔赛(重现赛)详细代码讲解
- 用邻接链表存图 详讲
- strstr函数的详细讲解
- ICPC Pacific Northwest Regional Contest 2019 C D E M 题解
- wordpress:您的主机禁用了mail()函数,找回用户名和密码
- AtCoder Beginner Contest 166 A ~~E
- AtCoder Beginner Contest 165 A ~~D