第二章--第一节:变量、字符串与数字

简介: 第二章--第一节:变量、字符串与数字

零、变量

1.什么是变量
变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。
因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。

2.变量例子

# 定义字符型变量
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的值改为’张三’,这样就改变了变量的类型。但是不推荐在实际开发过程中改变变量的类型,这样会造成程序代码的可读性变差,而且容易出错。

目录
相关文章
|
20天前
|
存储 C语言
c语言进阶部分详解(详细解析字符串常用函数,并进行模拟实现(上))
c语言进阶部分详解(详细解析字符串常用函数,并进行模拟实现(上))
70 0
|
20天前
|
存储 安全 C语言
c语言进阶部分详解(详细解析字符串常用函数,并进行模拟实现(下))
c语言进阶部分详解(详细解析字符串常用函数,并进行模拟实现(下))
85 0
|
20天前
|
C++
C++语言学习数组和字符串应用案例
【4月更文挑战第8天】该文展示了C++中数组和字符串的应用案例。数组示例定义了一个整数数组并访问、修改其元素,计算了元素之和。字符串示例中,定义了一个字符串并遍历、修改字符,进行了字符串拼接、查找子字符串及替换操作。
12 3
|
20天前
|
小程序 Python
python基础语法(第一章)(变量,注释,判断,循环,输入,输出)
python基础语法(第一章)(变量,注释,判断,循环,输入,输出)
31 0
|
12月前
|
机器学习/深度学习 搜索推荐 算法
编程艺术 - 第二章 、俩个字符串是否包含问题以及扩展
编程艺术 - 第二章 、俩个字符串是否包含问题以及扩展
49 0
|
12月前
|
Python
python编程 for循环注意点与大写转换案例
python编程 for循环注意点与大写转换案例
83 0
|
C语言
C语言进阶之路:输出任意两个数的和
C语言进阶之路:输出任意两个数的和
212 0
C语言进阶之路:输出任意两个数的和
|
C语言
C语言进阶之路:认识If语句(对任意两个数字进行比较大小)
C语言进阶之路:认识If语句(对任意两个数字进行比较大小)
333 0
C语言进阶之路:认识If语句(对任意两个数字进行比较大小)
|
存储 C语言
【C语言程序设计】知识点汇总3——数组、字符串数组、字符串输入输出相关注意事项
【C语言程序设计】知识点汇总3——数组、字符串数组、字符串输入输出相关注意事项
236 0
【C语言程序设计】知识点汇总3——数组、字符串数组、字符串输入输出相关注意事项
|
Python
考点:星号的巧妙使用方式,包含计算、传参【Python习题08】
考点:星号的巧妙使用方式,包含计算、传参【Python习题08】