Python基础入门:从变量到数据类型


这部分是我个人的一些经验总结,我擅长通过代码进行知识点的快速串讲。
入门过好几次python的同学[手动滑稽]可以充当复习资料,进行跳读。
已经学学习过其他高级语言的小伙伴,可以快速阅读。
请零基础的小伙伴们仔细研读,遇到实在不理解的概念可以提问,不过还是建议上廖雪峰老师的网站深究一二。

硬件环境:64位Win10
python版本:3.6/3.7
IDE :
在这里插入图片描述在这里插入图片描述
我个人尝试过的就有如上几款,我个人推荐使用Pycharm和jupyter notebook

Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。
——Jupyter Notebook官方介绍 (notebook很适合想要入门机器学习的新手使用)
详细的安装方法可以参考:https://www.jianshu.com/p/91365f343585

Pycharm:pycharm我用的是社区版的,这是一个功能强大的IDE,适合于项目的开发,平时拿来敲敲练习题是再好不过的了。
详细的安装方法可以参考:https://www.runoob.com/w3cnote/pycharm-windows-install.html


注释与print()

注释

注释就是一段说明文字,并不会被执行
在python的脚本中,开头的第一个字符如果是 # 那么就是注释了

 脚本中的 # 就是一个注释,作用:说明,解释,调试

'''
 这也是python中的注释
'''

"""
这也是python中的注释
"""

print() 输出函数

print可以在程序中输出一些内容,字符串,数字。。。
函数就是为了完成一些功能,例如:print就是为了输出数据

变量:

【代码示例】:

```python
a = 123
print(a)
print(type(a))

# type(变量名)
这个函数可以返回变量的数据类型
用print(type(变量名))就可以打印显示出来你所需要查看的数据类型了

a = "123"
print(a)
print(type(a))

123
<class 'int'>
123
<class 'str'>

变量就是用一个英文字符串来记录或标记一些数据,并且这个被标记的数据是可以变化的

生动来讲:变量就是一个被命名的黑匣子(变量名),黑匣子里面装载着数据,里面的东西是可以被替换的。
在这里插入图片描述
A = 1024
上图我们可以这么描述:一个名为A的黑匣子里面装了int类型的数据:1024
A = 1024就是变量的赋值过程,我们将 1024 这个整形数据赋给了 A 这个变量。
在这里插入图片描述
当我又准备把一个数据放进黑匣子里面的话,之前的1024就会被覆盖掉。
在这里插入图片描述
代码如下:

A = 1024
print(A)
# 现在的A的值是1024
A = 2048
print(A)
# 现在的A的值是2048

在这里插入图片描述

命名规范

变量的命名要有规范

  • 变量名可以使用字母,数字,下划线_,
  • 不能以数字开头
  • 严格区分大小写
  • 不要使用中文
  • 不要使用关键字 if else True False print

另外 变量的命名规范适用于脚本名称和后期的函数名及其它命令规范

变量的定义方式

定义变量时 要注意遵守变量命名规范

#第一种 变量定义方式
a = 10
b = 20

#第二种定义方式
a,b = 30,40
思考:如何实现 以下两个变量的数据相互交换
# 定义两个变量
a = 10
b = 20
# 交换两个变量的值

# 。。。

'''
普通方式,完成变量数据的交换
1,把a变量的值 赋值给c  ,此时 c变量中 就是 10
2,把b变量的值 赋值给a  , 此时 a变量中 就是 20
3,把c变量的值 赋值给b  , 此时 b变量中 就是 10
'''
# c = a
# a = b
# b = c

# 利用python定义比变量的语法来实现 变量的数据交换

a,b = b,a

python的数据类型

什么是数据类型?

数据类型就是数据的表现形式

比如 你好 就是一个字符串,200 就是一个数字

在程序当中除了这种常用的字符和数字外还有很多其它的数据表现形式

type() 函数,可以返回当前的数据类型
s = 'i love you'
res = type(s) 
print(res)  # <class 'str'>  str == string

1. 字符串类型

  • 单双引号都可以定义字符串
  • 三引号也可以定义字符串
  • 单双引号定义的字符串不能随意换行,需要在换行时指明换行符
  • 字符串中的引号可以互相嵌套,但是不能嵌套自己(例如不能在单引号中嵌套单引号,除非转义)
  • 字符串中可以使用转义字符,如 \r \n \t …
  • 如果不想在字符串中实现转义字符可以在字符定义时 加
    love = r'\nihao \shijie'即在 ‘\nihao \shijie’ 前面加一个r
# 定义方式就是使用 单引号 或者 双引号
love = 'iloveyou'
hello = "你好 世界"

# 也可以使用三引号实现大字符串的定义,一般用于大文本字符串的定义,
# 并且大字符串,可以换行
s = '''
比如说这一个
很长很长的文章内容。。。
'''

2.数字类型

  • int 整型
  • float 浮点类型
  • complex 复数
  • bool 布尔类型(True,False)
# 数字类型 Number
'''
int   整型
float 浮点类型
complex 复数
bool  布尔类型(True,False)
'''
varn = 521
varn = -1111

varn = 3.1415926

varn = 0x10  # 十六进制

varn = b'001100111' # bytes

# 复数
varn = 5+6j  # complex

# 布尔类型  bool
varn = True
varn = False
# print(varn,type(varn))

# 数值类型可以参与运算
a = 10
b = 20
print(a+b)

3.List列表类型

  • 列表用来表示一系列数据,例如: 需要记录一组数字或其它数据
  • 列表中存储的数据可以是任意类型的
  • 在需要记录多个数据时,可以使用中括号进行定义 [],
  • 并且每个数据之间使用逗号分隔 ,
  • 例如以下数据,定义了几组数字
  • 列表中存储的每一组数据,称为元素
  • 列表中存储的数据,可以通过下标的方式进行获取
  • 那么列表中元素的值可不可以存储一个列表,称为 二级列表(二维列表) 或者 多级列表 (多维列表)
'''
关于列表中的下标
  0   1   2    3    4 
['a','b',521,'pai',3.1415926]
 -5   -4   -3  -2   -1
'''

4. tuple 元组类型的定义

  • 在定义多个数据内容时,可以选择使用List列表类型
  • 还可以使用元组类型来定义,
  • 元组和列表非常像,都时用于存储多个数据时使用
  • 元组使用小括号进行定义(),列表使用中括号进行定义
  • 元组的最大特点就是值不能被改变
vart = (1,2,3,'a','b')
# 元组的其它定义方式
vart = 1,2,3
注意在定义元组时,如果元组中只有一个元素,那么需要加, 不然就不是元组类型了

5.Dict字典类型

  • 字典也是用于存储一组或多组数据时使用,使用大括号 {}来定义
  • 字典是 键值对 的存储方式 name :admin
  • 键和值之间使用冒号进行分隔,多组键值对之间使用逗号分隔
  • 键必须是字符串或数字类型,值可以是任意类型
  • 键名不能重复,值可以重复
# 比如需要记录一本书的相关数据 书名,作者,价格,。。。
vard = {'title':'<<鬼谷子>>','author':'鬼谷子','price':'29.99'}
# print(vard,type(vard))
# {'title': '<<鬼谷子>>', 'author': '鬼谷子', 'price': '29.99'} <class 'dict'>

# 获取字典中的值
print(vard['title'])
# 字典中的键不能重复使用,否则会覆盖
vard = {'a':10,'b':10,'c':20,'a':'aa',1:'abcdef','2':'2222'}
# print(vard)
tip: 在python之前的版本中,字典是无序的

6.set集合类型

  • set集合是一个 无序且元素不重复的 集合的数据类型
  • set集合使用 中括号或者set()方法来定义
  • 如果需要定义一个空集合时 只能使用 set()方法,因为大括号时定义的空字典
  • 集合主要用于运算,交集,差集,并集,对称集合

a = {1,2,3,'a'}
# 给集合添加元素
# a.add('b')
# 无法获取集合中的单个元素,但是可以添加和删除
# a.discard('a')
# print(a)
# 检查当前的元素是否在集合中
# print(1 in a)


# 集合主要用于运算,交集,差集,并集,对称集合
a = {1,2,3,'a','b'}
b = {1,'a',22,33}

print(a & b) # 交集  {1, 'a'}
print(a - b) # 差集 {'b', 2, 3}  a 集合有,b集合没有的
print(a | b) # 并集 {1, 2, 3, 33, 'a', 'b', 22} 两个集合,放到一起,并且去重
print(a ^ b) # 对称差集 {33, 2, 3, 'b', 22} 

总结数据类型

'''
字符串 string
数字类型 Number
    整型 int
    浮点 float
    复数
    布尔 bool
列表  list
元组  tuple
字典  dict
集合  set

可变数据类型:列表,字典,集合
不可不数据类型: 字符串,数字,元组

容器类型数据 : 字符串,列表,元组,集合,字典
非容器类型数据: 数字,布尔类型
'''

数据类型转换

  • 什么是数据类型转换?
    • 把一个数据类型转换为另一个数据类型,例如 字符串转为数字
  • 为什么需要数据类型转换?
    • 因为不同的数据类型之间不能运算
  • 数据类型转换的形式?
    • 自动类型转换
    • 强制类型转换
自动类型转换
# 自动类型转换
# 当两个不同的值进行运算时,结果会向更高的精度进行计算
# True ==> 整型 ==> 浮点 ==> 复数
a = 123
b = True  # 在和数字运算时 True转为数字1,False转为数字 0
# print(a+b)
# print(12.5+22)
# print(True+3.14)

强制类型转换

python中的每个数据类型都有对应的方法,可以对数据类型进行转换

  • str() 可以把所有的其它数据类型转换为字符串类型
  • int() 字符串转数字类型时,如果字符串中时纯数字,可以转换
    • 其它容器类型不能转为数字int类型
  • float() 浮点类型的转换和int类型一样,不过转换的结果是浮点类型
  • bool() 可以把其它类型转换布尔类型的True或False
    • 总结,哪些情况转bool的结果是 False
    • '',0,0.0,False,[],{},(),set()
  • list() 列表
    • 数字类型是 非容器类型,不能转换为列表
    • 字符串 转换为列表时 会把字符串中的每一个字符当做列表的元素
    • 集合 可以转换为 list列表类型
    • 元组 可以转换为 list列表类型
    • 字典 可以转换为 list列表类型,只保留了字典中的键
  • tuple() 元组
    • 数字类型 非容器类型,不能转换为元组
    • 其它容器类型的数据进行转换时,和列表一样
  • set() 集合
    • 数字类型 非容器类型,不能转换为 集合
    • 字符串,列表,元组 可以转为 集合 结果是无序的
    • 字典转换为集合时,只保留了字典的键 key
  • dict() 字典
    • 数字类型 非容器类型,不能转换为 字典
    • 字符串不能直接转换为 字典
    • 列表可以转换为字典,要求是一个二级列表,并且每个二级元素只能有两个值
    • 元组可以转换为字典,要求是一个二级元组,并且每个二级元素只能有两个值
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Good_Yes_Top_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值