首页 > 技术文章 > python学习之变量类型

SunIan 原文

变量:

  变量是保存在内存中的值,根据变量类型开辟不同的内存空间且只允许符合该数据类型的数据才可以被存储在该内存空间中

变量赋值:

在Python中定义变量时,无需像其他语言一样需要声明数据类型。每个变量在内存中创建的时候都会包含变量的标识、名称和数据信息,在使用变量的时候,必须要给变量赋值,且该变量在赋值后才会被创建。

我们用(=)给变量赋值,等号的左边是变量的名称,右边是将要存储在内存中的值,例如:

 1 str='hello python' 

表示定义一个变量名为str且向该变量名赋值hello python的变量,赋值后的str会在内存中开辟一个属于自己的内存空间

Python通过(,)隔开,允许同时向多个变量名赋值

1 name,pwd='张三','123'
2 print('name is:',name,' pwd is:',pwd)

运行结果 name is: 张三  pwd is: 123

标准数据类型:

Python中有五种标准的数据类型用于在内存中存储不同的数据

Number(数字) :用于存储数值,不可变类型,改变变量原有变量时将是一个新的对象 Python支持四种数数字类型 分别是int(有符号整型)、long(长整型)、float(浮点型)、complex(复数)

String(字符串):用于存放字符串 ,可通过头下边或尾下标取值

1 str='hello world'
2 print(str) #输出完整字符串
3 print(str[0])#输出字符串中第一个字符
4 print(str[2:4])#输出字符串中第二至第四个字符
5 print(str[2:])#输出第二个至结束的字符
6 print(str*2)#输出两遍字符串
7 print(str+'test')#通过+将两个字符串拼接在一起

输出结果如下

1 hello world
2 h
3 ll
4 llo world
5 hello worldhello world
6 hello worldtest

List(列表) :列表可以实现复合类的数据结构操作。用[ ]标识,多个复合数据用(,)隔开。列表同样可以像字符串一样,通过[头下:尾下标]读取特定元素

1 list = ['hello python', 786, 2.23, 'john', 70.2]
2 tinylist = [123, 'john']
3 print(list)  # 输出完整列表
4 print( list[0])  # 输出列表的第一个元素
5 print(list[1:3])  # 输出第二个至第三个元素
6 print(list[2:])  # 输出从第三个开始至列表末尾的所有元素
7 print(tinylist * 2)  # 输出列表两次
8 print(list + tinylist)  # 打印组合的列表

输出结果如下

1 ['hello python', 786, 2.23, 'john', 70.2]
2 hello python
3 [786, 2.23]
4 [2.23, 'john', 70.2]
5 [123, 'john', 123, 'john']
6 ['hello python', 786, 2.23, 'john', 70.2, 123, 'john']

Tuple(元祖):元祖通过()标识,多元素间同样以(,)隔开,元祖不能二次赋值,既只可读不可更改

1 tuple=('hello python','hello world')
2 list=['hello python','hello world']
3 print(tuple)
4 print(tuple[0])
5 tuple[0]='hello Python'#非法操作
6 list[0]='hello Python'#合法操作,相当于 将list[0]的新值覆盖旧值 此时list=['hello Python', 'hello world']
7 print(list)

Dictionary(字典):字典是通过键值对存取数据的数据类型,字典用{}标识 由key和value组成

1 dict={}
2 dict['name']='zhangsan'
3 dict['pwd']='123'
4 print(dict)
5 print(dict.keys())
6 print(dict.values())

显示结果

1 {'name': 'zhangsan', 'pwd': '123'}
2 dict_keys(['name', 'pwd'])
3 dict_values(['zhangsan', '123'])

Python中的数据类型转换

在需要转换数据类型以满足工作需要时,只需将数据类型作为函数名即可完成转换任务
函数 解释
int(x) 将x转换为一个整数
long(x) 将x转换为一个长整型
float(x) 将x转换为一个浮点数
str(x) 将x转换为字符串
repr(x) 将x转换为表达式字符串
eval(str) 用来计算在字符串中的有效python表达式,并返回一个对象
tuple(s) 将序列s转换为一个元祖
list(s) 将序列s转换为一个列表
set(s) 将序列s转换为一个可变集合
dict(d) 创建一个字典,d必须是一个序列(key,value)元祖
frozenset(s) 转换为不可变集合
chr(x) 将一个整数转换为一个字符
unichr(x) 将一个整数转换为Unicode字符
ord(x) 将一个字符转换为他的整数型
hex(x) 将一个整数转换为一个十六进制的字符串
oct(x) 将一个整数转换为一个八进制的字符串

推荐阅读