Python学习(三)——变量、数据类型、字符串索引、类型转换、小整数地址
本文介绍了变量、数据类型、字符串索引、类型转换、小整数地址,仅作为本人学习时记录,感兴趣的初学者可以一起看看,欢迎评论区讨论,一起加油鸭~~~
心中默念:Python 简单好学!!!
(有其他编程语言基础,所以记录的可能对初步接触编程的同学不太友好,有问题欢迎留言)
变量
创建
变量
1、代码:处理数据用的
2、变量:存储数据的
创建变量
也就是变量的赋值、变量的定义。
单个变量赋值
语法规则:变量名 = 变量值
- 变量定义之后,后续就可以直接使用
- 变量必须先定义后使用
- =两边要留一个空格
多个变量赋值
语法规则:变量名 = 变量值
eg:
# 多个变量的值相同
num1 = num2 = num3 = 10
# 多个变量的值不同,元组赋值
a, b = 10, 20
逗号的使用方式:
- 在print中,将两个或多个同时打印在一行
- 多变量一行中分别赋值,一般用于对相关联的多个变量进行赋值
示例代码
# 任务:买苹果
price = 10.5
weight = 7.5
money = price * weight #星号*代表乘法
print("总共消费了 %.2f 元" % money)
修改
创建变量后,可以在代码中重新赋值。
- Python对变量的数据类型没有那么严格,可以在赋值时对变量类型进行修改
示例代码
多行注释: Ctrl + /
# 任务:超市打折活动
price = 10.5
weight = 7.5
money = price * weight #星号*代表乘法
money = money - 5
print("总共消费了 %.2f 元" % money)
命名
常量(约定俗称)
程序在运行的过程中,值永远不会发生改变的量称之为常量。Python没有专门的常量类型,一般约定俗成使用大写表示常量。
变量命名
标识符
程序员定义的变量名、函数名。名字需要有见名知义的效果。
- 由字母、下划线、数字组成
- 不能以数字开头
- 不能与关键字重名
关键字
- python内部已经使用的标识符
- 具有特殊的功能和含义
- 不允许定义和关键字相同的名字的标识符
命名规则
增加代码的识别和可读性。如果变量名需要两个或多个单词组成时,可以按照以下方式命名
- 每个单词都使用小写字母
- 单词与单词之间使用_下划线连接
常用命名方法——驼峰命名法
- 小驼峰命名法:第一个单词小写字母开始,后续单词首字母大写
- 大驼峰命名法:每一个单词的首字母都采用大写字母
类型
- 在python中定义变量是不需要指定类型。
- 可以使用type和isinstance来测试和判断数据类型。
示例
a = '1234sd'
print(type(a)) #type获取数据类型,检测数据类型时使用
print(isinstance(a,str)) #isinstance判断数据类型,返回true/false
Python中的数据类型
- 整型(Integers):整数,不带小数点
- 浮点型(Floating point numbers):带小数点的数字
- 复数(Complex Numbers):带有实部和虚部的数字
- 布尔型(Boolean):真假,True/False
- 字符串(String):一串字符
- 列表(List):有序的集合,可以包含任何数据类型
- 元组(Tuple):类似于列表,但不可变
- 集合(Set):无序且不重复的元素集合
- 字典(Dictionary):键值对的集合
整型(Integers)
# 整数的变量的定义
num = 10
print(num)
# 负数
num2 = -10
print(num2)
# 查看变量的数据类型
print(type(num))
print(type(num2))
# 输入一个数字计算
num3 = input("请输入一个数字:")
print(type(num3))
num3 = int(num3) + 10
print(num3)
浮点型(Floating point numbers)
运算可能有四舍五入的误差。
# 浮点数的计算
n1 = 2.1
n2 = 15.256
print(n1 + n2)
# 四舍五入round
n3 = round(n1 + n2,2)
print(n3)
import math
# 向上取整 ceil(天花板)
n4 = math.ceil(n3)
print("向上取整的结果是:",n4)
# 向下取整 floor(地板)
n5 = math.floor(n3)
print("向下取整的结果是:",n5)
布尔型
- 只有True、False两种值
- 作用:作为真假的判断
- 在python中,能够解释为假的值有:None、0、0.0、False、所有的空容器(空列表、空元组、空字典、空集合、空字符串)
字符串
- 一串字符,是编程语言中表示文本的数据类型
- 在python中可以使用一对双引号或者一对单引号定义一个字符串
- 字符串可以是用引号括起来的任意文本,也可以是三引号引起来的任意文本
运算
- 加法(字符串拼接)
- 乘法(重复字符串)
# 创建字符串
s1 = 'hello'
print(s1)
s2 = "hello"
print(s2)
s3 = '''
hello
world'''
print(s3)
s4 = "It's a hat"
print(s4)
s5 = '1234\'\"6666' #右斜杠为转义符
print(s5)
# 字符串拼接
print('----------')
print(s1 + s4 + s5)
# 字符串乘法
print('-----字符串乘法-----')
print(s1 * 2)
print('@' * 20)
字符串索引
可以使用索引获取一个字符串中指定位置的字符,索引计数从0开始。(索引为负号,说明为倒着数,此时从==-1==开始,ps因为-0和0是一样的)
# 创建字符串
s = 'hello,world'
print(s[0])
print(s[4])
print(s[-1])
# 切片 变量名[起始索引:结束索引+1:步数]
# 步数默认为1,可省略不写
# 起始索引默认为0,可省略不写
# 结束默认为-1,可省略不写
print(s[0:4]) #包头不包尾
print(s[6:9]) #wor
s2 = '0123456789'
print(s2[0:9:2])
print(s2[:9:2])
print(s2[::2])
# 字符串反转
print(s2[-1:-11:-1])
print(s2[::-1])
数据类型的转换
# 转换为整数int
# 字符串str-->整数int
# 纯数字的字符串
s = '2024'
n = int(s)
print(type(s),type(n))
# 浮点数float-->整数int
s1 = 2.223
print(int(s1))
# 布尔bool-->整数int
s2, s3 = True, False
print(int(s2),int(s3))
# 转换成浮点数float
# str-->float
s = '324.6' # 有没有小数点都可以
print(float(s))
# int-->float
n = 2024
print(float(n))
# bool-->float
print(float(s2),float(s3))
# 转换为布尔bool
# str-->bool
s = '0'
print(bool(s))
s1 = ''
print(bool(s1))
# int-->bool
n = 0
print(bool(n))
# float-->bool
f = 0.0
print(bool(f))
# 转换为字符串str
# int-->str
n = 5
print(str(n))
print(type(str(n)))
# float-->str
f = 5.3
print(str(f))
print(type(str(f)))
# bool-->str
a = True
print(str(a))
print(type(str(a)))
# 进制的转换
s = '1a'
print(int(s,16))
小整数地址问题
- Python中的小整数,通常指的是==-5至256==之间的整数。
- 当你在Python中创建一个整数对象时,Python会根据该整数的值动态地为其分配内存空间。对于小整数,Python会使用一种小整数缓存的机制来优化内存使用
- 跟踪Python对象的内存地址,可以使用Python提供的内置函数==id()==来获取对象的唯一标识符,这个标识符通常可以用来近似地表示对象的内存地址。(这个标识符并不是真正的内存地址,而是由Python解释器生成的一个唯一标识符,用于区分不同的对象实例)