在内存存储的数据可以有多种类型。例如,人的姓名可以用字符型存储、年龄可以使用数值型存储、而婚否可以使用布尔类型存储。这些都是Python中提供的基本数据类型。

变量存储在内存中的值,这就意味着在创建变量时会在内存中开辟一个空间。

基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。

变量可以通过变量名访问。在 Python 中 变量命名规定,必须是大小写英文,数字和 下划线(_)的组合,并且不能用数字开头。

变量命名规则:

  • 变量名只能是字母,数字和下划线的任意组合

  • 变量名第一个字符不能是数字

  • 变量名区分大小写,大小写字母被认为是两个不同的字符

  • 特殊关键字不能命名为变量名

并且变量也可以指定不同的数据类型,这些变量可以存储整数,小数或字符。

一般常见的数据类型有以下六种:

Number(数字)

String(字符串)

List(列表)

Tuple(元组)

Sets(集合)

Dictionary(字典)

根据可变与不可变类型又可以分为以下两种:

不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);

可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

Number(数字)

数字类型是顾名思义是用来存储数值的,需要记住的是,有点和 Java 的字符串味道差不多,如果改变了数字数据类型的值,将重新分配内存空间。

Python 支持三种不同的数值类型:

  • 整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。

  • 浮点型(float) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)

  • 复数( (complex)) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。

name = '张三'  #字符串
age = 18    #整型
height = 1.88  #浮点型#打印变量类型
print(type(name))
print(type(age))
print(type(height))
'''
输出
<class 'str'>
<class 'int'>
<class 'float'>
'''

String(字符串)

字符串或串(String)是由数字、字母、下划线组成的一串字符。

创建字符串可以使用单引号、双引号、三单引号和三双引号,这三种形式实际上没有区别,只是在形式上有不同。

str1 = '先帝创业未半而中道崩殂,今天下三分,益州疲弊,此诚危急存亡之秋也。'
str2 = "然侍卫之臣不懈于内,忠志之士忘身于外者,盖追先帝之殊遇,欲报之于陛下也。"
str3 = '''诚宜开张圣听,以光先帝遗德,恢弘志士之气,不宜妄自菲薄,引喻失义,以塞忠谏之路也。
宫中府中,俱为一体,陟罚臧否,不宜异同。若有作奸犯科及为忠善者,宜付有司论其刑赏,以昭陛下平明之理,不宜偏私,使内外异法也。
侍中、侍郎郭攸之、费祎、董允等,此皆良实,志虑忠纯,是以先帝简拔以遗陛下。愚以为宫中之事,事无大小,悉以咨之,然后施行,必能裨补阙漏,有所广益。
print(1, str1)
print(2, str2)
print(3, str3)
'''
输出
1 先帝创业未半而中道崩殂,今天下三分,益州疲弊,此诚危急存亡之秋也。
2 然侍卫之臣不懈于内,忠志之士忘身于外者,盖追先帝之殊遇,欲报之于陛下也。
3 诚宜开张圣听,以光先帝遗德,恢弘志士之气,不宜妄自菲薄,引喻失义,以塞忠谏之路也。
宫中府中,俱为一体,陟罚臧否,不宜异同。若有作奸犯科及为忠善者,宜付有司论其刑赏,以昭陛下平明之理,不宜偏私,使内外异法也。
侍中、侍郎郭攸之、费祎、董允等,此皆良实,志虑忠纯,是以先帝简拔以遗陛下。愚以为宫中之事,事无大小,悉以咨之,然后施行,必能裨补阙漏,有所广益。
'''

Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。

我们定义一个 s='python'语句,它在计算机中的执行顺序是先在内存中创建一个字符串 Python ,在程序栈寄存器中创建一个变量 s,最后把 Python  的地址赋给s 。

Python 访问字符串中的值

如果你要实现从字符串中获取一段子字符串的话,可以使用 [头下标:尾下标] 来截取相应的字符串,其中下标是从 0 开始算起,可以是正数或负数,下标可以为空表示取到头或尾。

[头下标:尾下标] 获取的子字符串包含头下标的字符,但不包含尾下标的字符。

str = 'apple'
print(str[1:5])
'''
输出
pple
'''

Python 字符串连接

va1 = 'hello world'print(va1, ',python')
print(va1+'+python')
'''
输出
hello world ,python
hello world+python
'''

点击了解字符串详情:
https://www.runoob.com/python/python-strings.html

List(列表)

List(列表) 是 Python 中使用最频繁的数据类型。它的元素是可以改变的。

列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。

列表用 [ ] 标识,是 python 最通用的复合数据类型。

zhangsan_info = ['张三', 22, 55, '北京']
print(zhangsan_info)
'''
输出
['张三', 22, 55, '北京']
'''

访问列表中的值

使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符。

list1 = ['Carter', 'Kobe', 'Iverson', 'McGrady']
list2 = [1, 2, 3, 4, 5, 6, 7]print(list1[0])
print(list2[0:2])
'''
输出
Carter
[1, 2]
'''

更新列表

你可以对列表的数据项进行修改或更新,你也可以使用append()方法来添加列表项。

list = []
list.append('Jordan')
list.append('Kobe')
print(list)'''
输出
['Jordan', 'Kobe']
'''

删除列表元素

可以使用 del 语句来删除列表的元素。

list = ['Jordan','Carter', 'Kobe', 'Iverson', 'McGrady']
print(list)
del list[0]
print(list)
'''
输出
['Jordan', 'Carter', 'Kobe', 'Iverson', 'McGrady']
['Carter', 'Kobe', 'Iverson', 'McGrady']
'''

点击了解列表详情:

https://www.runoob.com/python/python-lists.html

Tuple(元组)

Python的元组与列表类似,不同之处在于元组的元素不能修改。

元组使用小括号,列表使用方括号。

元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

lisi_info = ('李四', 22, 55, '北京')
print(lisi_info)
'''
输出
('李四', 22, 55, '北京')
'''

创建空元组

#创建一个空元组
tup1 = ()

元组中只包含一个元素时,需要在元素后面添加逗号。

#创建致函一个元素的元组
tup1 = (55,)

访问元组

元组可以使用下标索引来访问元组中的值类似于列表一样。

tup1 = ('Carter', 'Kobe', 'Iverson', 'McGrady')
tup2 = (1, 2, 3, 4, 5, 6, 7)print(tup1[0])
print(tup2[0:2])
'''
输出
Carter
(1, 2)
'''

修改元组

前面提到过元组中的元素值是不允许修改的

tup1 = ('Carter', 'Kobe', 'Iverson', 'McGrady')
#错误示范
tup1[1] = ('bryant')
print(tup1)
'''
输出
TypeError: 'tuple' object does not support item assignment
'''

但我们可以对元组进行连接组合。

tup1 = ('Carter', 'Kobe', 'Iverson', 'McGrady')
tup2 = (1, 2, 3, 4, 5, 6, 7)tup = tup1 + tup2
print(tup)
'''
输出
('Carter', 'Kobe', 'Iverson', 'McGrady', 1, 2, 3, 4, 5, 6, 7)
'''

删除元组

元组中的元素值是不允许删除的

tup1 = ('Carter', 'Kobe', 'Iverson', 'McGrady')
#错误演示
del tup1[1]print(tup1)
'''
输出
TypeError: 'tuple' object doesn't support item deletion
'''

但我们可以使用del语句来删除整个元组。 以上实例元组被删除后,输出变量会有异常信息。

点击了解元组详情:

https://www.runoob.com/python/python-tuples.html

集合(set)

集合(set)是一个无序不重复元素的序列,使用大括号 {} 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 {} ,因为 {} 是用来创建一个空字典。

parame = {value01,value02,...}
或者
set(value)

集合不能被切片也不能被索引,除了做集合运算之外,集合元素可以被添加还有删除:

a_set = {1,2,3,4}
# 添加
a_set.add(5)
print(a_set)  # 输出{1, 2, 3, 4, 5}
# 删除
a_set.discard(5)
print(a_set)  # 输出{1, 2, 3, 4}
'''
输出
{1, 2, 3, 4, 5}
{1, 2, 3, 4}
'''

添加元素

使用add()将元素 x 添加到集合 s 中,如果元素已存在,则不进行任何操作。

set1 = set(('Carter', 'Kobe', 'Iverson', 'McGrady'))#添加不存在的数据
set1.add('Jordan')#添加已存在的数据
set1.add('Carter')
print(set1)
'''
输出
{'Carter', 'Jordan', 'Kobe', 'McGrady', 'Iverson'}
'''

还有一个方法,也可以添加元素,且参数可以是列表,元组,字典等,可以自己尝试一下。

s.update( x )

移除元素

将元素 x 从集合 s 中移除,如果元素不存在,则会发生错误。

set1 = set(('Carter', 'Kobe', 'Iverson', 'McGrady'))#删除已存在的数据
set1.remove('Carter')
print(set1)
'''
输出
{'Iverson', 'Kobe', 'McGrady'}
'''
set1 = set(('Carter', 'Kobe', 'Iverson', 'McGrady'))#删除不存在的数据
set1.remove('Carter666')print(set1)
'''
输出
KeyError: 'Carter666'
'''

计算集合元素个数

使用len()方法统计集合元素个数

set1 = set(('Carter', 'Kobe', 'Iverson', 'McGrady'))print(len(set1))
'''
输出
4
'''

清空集合

使用clear()方法统计集合元素个数

set1 = set(('Carter', 'Kobe', 'Iverson', 'McGrady'))
set1.clear()print(set1)
print(len(set1))
'''
输出
set()
0
'''

点击了解集合详情:

https://www.runoob.com/python3/python3-set.html

Dictionary(字典)

字典是一种映射类型,它的元素是键值对,字典的关键字必须为不可变类型,且不能重复。创建空字典使用 {} 。

键必须是唯一的,但值则不必。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字。

tinydict = {'name': 'runoob','code':6734, 'dept': 'sales'}
print(tinydict)
'''
输出
{'name': 'runoob', 'code': 6734, 'dept': 'sales'}
'''

访问字典

把需要访问的值的键放入到方括号中

tinydict = {'name': '张三','age':18, 'dept': 'sales'}print('name:',tinydict['name'])
'''
输出
name: 张三
'''

如果用字典里没有的键访问数据,会输出错误

tinydict = {'name': '张三','age':18, 'dept': 'sales'}print('name:',tinydict['name1'])
'''
输出
KeyError: 'name1'
'''

添加字典元素

向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对

tinydict = {'name': '张三','age':18, 'dept': 'sales'}#添加
tinydict['address'] = '北京'
print(tinydict)
'''
输出
{'name': '张三', 'age': 18, 'dept': 'sales', 'address': '北京'}
'''

修改字典元素

tinydict = {'name': '张三','age':18, 'dept': 'sales'}#修改
tinydict['address'] = '上海'
print(tinydict)'''
输出
{'name': '张三', 'age': 18, 'dept': 'sales', 'address': '上海'}
'''

删除字典元素-删除单一的元素

tinydict = {'name': '张三','age':18, 'dept': 'sales'}
print(tinydict)#删除字典元素
del tinydict['dept']
print(tinydict)
'''
输出
{'name': '张三', 'age': 18, 'dept': 'sales'}
{'name': '张三', 'age': 18}
'''

删除字典元素-清空字典

tinydict = {'name': '张三','age':18, 'dept': 'sales'}
print(tinydict)#清空字典
tinydict.clear()
print(tinydict)'''
输出
{'name': '张三', 'age': 18, 'dept': 'sales'}
{}
'''

删除字典元素-删除字典

tinydict = {'name': '张三','age':18, 'dept': 'sales'}
print(tinydict)#删除字典
del  tinydict
print(tinydict)'''
输出
NameError: name 'tinydict' is not defined
{'name': '张三', 'age': 18, 'dept': 'sales'}
'''

点击了解字典详情:

https://www.runoob.com/python3/python3-dictionary.html

Day 5/100:Python 变量与数据类型相关推荐

  1. python变量定义大全_详解python变量与数据类型

    这篇文章我们学习 Python 变量与数据类型 变量 变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念,变量可以通过变量名访问.在 Python 中 变量命名规定,必须是大小写英文,数字 ...

  2. 01 Python变量和数据类型

    Python变量和数据类型 1 数据类型 计算机,顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然也可以处理各种数值. 但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页 ...

  3. 【Python基础入门系列】第03天:Python 变量与数据类型

    这篇文章我们学习 Python 变量与数据类型 Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可 ...

  4. python 子字符串 位置_python查找子字符串位置Python变量和数据类型详解

    Python变量和数据类型 Python中数据类型 Python之print语句 Python的注释 Python中什么是变量 Python中定义字符串 Python中raw字符串与多行字符串 Pyt ...

  5. python变量类型-python变量的数据类型有哪些?

    现实生活中,我们在超市买东西的时候,往往都需要使用购物车来存储物品,等到所有的物品都购买完成后,在收银台进行结账即可. 大家试想一下,如果程序中要对多个数据求和,就需要把这些数据先存储起来,再对这些数 ...

  6. python变量及数据类型

    变量以及数据类型 一.变量的定义 定义:对于重复使用,并且经常需要修改的数据,可以定义为变量. 定义变量的语法:变量名=变值名(这里的等号是赋值的作用) python是一门弱语言:变量声明的时候对变量 ...

  7. python变量的数据类型

    变量在赋值时会自动判断数据的类型 python最常用的有四种数据类型 字符串 - str(string) 整数 - int(integer) 浮点数 - float 布尔型 - bool(boolea ...

  8. python变量和数据类型_Python变量和数据类型简介

    变量(Variable)可以看成一个小箱子,专门用来"盛装"程序中的数据.每个变量都拥有独一无二的名字,通过变量的名字就能找到变量中的数据. 从底层看,程序中的数据最终都要放到内存 ...

  9. day1.python变量和数据类型的介绍教程图灵python大海老师

    qq1328044392 day1变量和数据类型的介绍 教程地址 p1 编程基础 1.编程和编程语言 1.1.什么是编程语言 ​ 语言是一个事物与另外一个事物沟通的介质 比如人与人交流汉语,英语,日语 ...

最新文章

  1. idea连接mysql
  2. SQL Server 2012 新特性:新增和修改函数
  3. 陌生的是人心,是人性,是社会,是世道
  4. PL/SQL Developer跑在Oracle 64位数据库上初始化错误
  5. phalcon无限重定向
  6. 稳定的货源社区新版云乐购免费开源源码
  7. 个人永久性免费-Excel催化剂功能第75波-标签式报表转标准数据源
  8. 在centos安装oracle客户端,centos下安装oracle客户端
  9. 2022-2028全球与中国电池级硫酸锰市场现状及未来发展趋势
  10. windows media 服务器运行失败,Windows Media Player出现服务器运行失败怎么办?出现服务器运行失败处理方法介绍...
  11. OpenGL 之 EGL 使用实践
  12. 树莓派开机自启动opencv程序脚本及报错分析及拓展
  13. S6系统激活、软件升级和软件授权激活
  14. python折线图绘制——记录
  15. The ETH-MAV Team in the MBZ International Robotics Challenge
  16. P15-Windows与网络基础-NTFS权限规则
  17. python字典找出年龄最大的人_python找出字典中value最大值的几种方法
  18. 佛朗斯冲击港交所IPO:叉车租赁的未来是数字化?
  19. 看板管理解析:如何通过看板提升项目管理效率?
  20. 【解决】Initializing libiomp5md.dll, but found libiomp5md.dll already initialized. matplotlib.pylot 画图报错

热门文章

  1. 鸿蒙dnf为什么一直连接服务器,DNF组队崩溃内存占用高怎么办 附带详细解决办法...
  2. 验证视图状态 MAC 失败。如果此应用程序由网络场或群集承载,请确保 machineKey...
  3. 获取天猫搜索同款的商品的API接口
  4. 【经验贴】【汽修】修理车顶阅读灯 - 开车门控制失常, 熄火不亮 -> 以大众高尔夫7为例
  5. php 5.6.22 漏洞,SugarCRM v6.5.23 PHP反序列化对象注入漏洞
  6. Xshell创建新用户(非root)
  7. php反序列化注入漏洞,SugarCRM v6.5.23 PHP反序列化对象注入漏洞分析
  8. 安卓逆向——雷电模拟器安卓安装Xposed问题
  9. Mybatis动态数据源实现
  10. 社交网站用户的10大变态心理