hello大家好我是你们的朋友JamesBin,今天本文的主要内容是变量与简单数据类型,在汇编语言中,存放数据是直接用内存地址存放的,这种赋值方法非常麻烦,特别是占用多个字节内存的数据。所以 C语言为了让我们更加方便的编程,设计出了数据类型和变量。
变量
变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。
基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。
因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。
参考链接:变量命名规则:python零基础到实践——变量命名规则及习惯
Python允许你同时为多个变量赋值。例如:
a = b = c = 1
也可以为多个对象指定多个变量。例如:
a, b, c = 1, 2, "JamesBin"
#以上实例,两个整型对象 1 和 2 分别分配给变量 a 和 b,字符串对象 "john" 分配给变量 c。
注意:
Python 中的变量赋值不需要类型声明。
每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。等号(=)用来给变量赋值。
数据类型
Python有五个标准的数据类型:
- Numbers(数字)
- String(字符串)
- List(列表)
- Dictionary(字典)
- Tuple(元组)
Numbers(数字)
Python3 支持 int、float、bool、complex(复数)
Python 支持三种不同的数值类型:
- 整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。
- 浮点型(float) - 浮点型由整数部分与小数部分组成,浮点类型不精确存储
- 复数( (complex)) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。
数字类型数据转换:
- int(x) 将x转换为一个整数
- float(x) 将x转换到一个浮点数
- complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。
- complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式
String(字符串)
字符串或串(String)是由数字、字母、下划线组成的一串字符。
创建字符串
可以使用单引号、双引号、三单引号和三双引号,
带r或R前缀:r’hello’、R’hello’
带u或U前缀:u’hello’、U’hello’,
字符串详解请参考另一篇博客:字符串函数
List(列表)
- 列表由一系列按特定顺序排列的元素组成。你可以创建包含字母表中所有字母、数字0~9或所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中的元素之间可以没有任何关系。
- 鉴于列表通常包含多个元素,给列表指定一个表示复数的名称(如letters、digits或names)是个不错的主意。在Python中,用方括号([])来表示列表,并用逗号来分隔其中的元素。
- List(列表) 是 Python 中使用最频繁的数据类型。
- 列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。 列表用 [ ] 标识,是 python
最通用的复合数据类型。
python用加号 + 是列表连接运算符,星号 * 是重复操作。
例如;
# -*- coding: UTF-8 -*-
# -Author-= JamesBen
# Email: 1597757775@qq.com
list = [ 'JamesBen', 122 , 3.14, 'python', 520 ]
tinylist = [123, 'john']
print list # 输出完整列表
print list[0] # 输出列表的第一个元素
print list[1:3] # 输出第二个至第三个元素
print list[2:] # 输出从第三个开始至列表末尾的所有元素
print tinylist * 2 # 输出列表两次
print list + tinylist # 打印组合的列表
详细讲解见:列表详解
字典
字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典用"{ }"标识。字典由索引(key)和它对应的值value组成。
例如爬虫常用的请求头就是字典类型
headers = {
'Connection': 'keep-alive',
'Pragma': 'no-cache',
'Cache-Control': 'no-cache',
'X-Legacy-Device-Id': '1582607673436',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.87 Safari/537.36',
'X-Legacy-Token': 'eyJhY2Nlc3NfdG9rZW4iOiJqQkk3SWVtV2dGVHhtTG1SIiwicmVmcmVzaF90b2tlbiI6ImI4TkcyWWh2Y09icXdCMVEiLCJ0b2tlbl90eXBlIjoibWFjIiwiZXhwaXJlX2luIjoyNTkyMDAwfQ==',
'Content-Type': 'application/json',
'Sec-Fetch-Dest': 'empty',
'X-Legacy-Uid': '5e54ad39e51d4526d6405f4e',
'X-Agent': 'Juejin/Web',
'Accept': '*/*',
'Origin': 'https://juejin.im',
'Sec-Fetch-Site': 'same-site',
'Sec-Fetch-Mode': 'cors',
'Referer': 'https://juejin.im/user/5dd631975188254e310b4cbb',
'Accept-Language': 'zh-CN,zh;q=0.9',
}
详细讲解:字典
元组
元组是另一个数据类型,类似于 List(列表)。
元组用 () 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。
元组与列表的区别:
声明一个元组并赋值的语法与列表相同,不同之处是元组使用小括号,列表使用方括号,元素之间也是用英文逗号分隔。需要注意的是,当元组只有一个元素时,需要在元素的后面加一个英文逗号分隔符,以防止与表达式中的小括号混淆。这是因为小括号既可以表示元组,又可以表示表达式中的优先级算符,这就容易产生歧义。
#创建空的元组对象
()
#创建一个对象的元组(逗号不能少)
(1,)
#用字符串创建元组,可迭代对象均可用于创建元组
tuple('hello')
#用解析结构创建元组
tuple(i*2 for i in range(5))
元组的基本操作:
#求长度
len((0,1,2,3,4,5))
#合并
(1,2)+('a','b')+(2.45,)
#重复
(1,2)*3
#迭代
for x in (1,2.5,'hello',[1,2]):print(x)
#关系判断
'a' in ('a','b','c')
#索引和分片
x=tuple(range(10))
以上就是变量与简单数据类型的讲解,希望对你有所帮助。