Python变量和数据类型详解
Python变量类型
变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。
基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。
因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。
变量赋值
Python中的变量赋值不需要类型声明。
每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。
每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
等号(=)用来给变量赋值。
等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。例如:
#!/usr/bin/python #-*-coding:UTF-8-*- counter=100#赋值整型变量 miles=1000.0#浮点型 name="John"#字符串 print(counter) print(miles) print(name)
以上实例中,100,1000.0和"John"分别赋值给counter,miles,name变量。
执行以上程序会输出如下结果:
100
1000.0
John
多个变量赋值
Python允许你同时为多个变量赋值。例如:
a=b=c=1
以上实例,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上。
您也可以为多个对象指定多个变量。例如:
a,b,c=1,2,"john"
以上实例,两个整型对象1和2的分配给变量a和b,字符串对象"john"分配给变量c。
注意:
以下关键字不能声明为变量:
and、as、assert、break、class、continue、def、del、elif、else、except、exec、finally、for、global、if、import、in、is、lambda、not、or、pass、print、raise、return、try、while、with、yield、id
Python中数据类型
一、整数
int=20
printint
print45678+0x12fd2
二、浮点数
float=2.3
printfloat
三、字符串
a、使用单引号(')
用单引号括起来表示字符串,例如:
str='thisisstring'
printstr
b、使用双引号(")
双引号中的字符串与单引号中的字符串用法完全相同,例如:
str="thisisstring";
printstr
c、使用三引号(''')
利用三引号,表示多行的字符串,可以在三引号中自由的使用单引号和双引号,例如:
str='''thisisstring
thisispythodstring
thisisstring'''
printstr
四、布尔值
and:与运算,只有所有都为True,and运算结果才是True。
or:或运算,只要其中有一个为True,or运算结果就是True。
not:非运算,它是一个单目运算符,把True变成False,False变成True。
bool=False
printbool
bool=True
printbool
五、空值
空值是Python里一个特殊的值,用None表示。
None不能理解为0,因为0是有意义的,而None是一个特殊的空值。
六、列表
#-*-coding:utf-8-*-
lst=['A','B',1996,2017]
nums=[1,3,5,7,8,13,20]
#访问列表中的值
print"nums[0]:",nums[0]#1
print"nums[2:5]:",nums[2:5]#[5,7,8]
print"nums[1:]:",nums[1:]#[3,5,7,8,13,20]
print"nums[:-3]:",nums[:-3]#[1,3,5,7]
print"nums[:]:",nums[:]#[1,3,5,7,8,13,20]
#更新列表
nums[0]="ljq"
printnums[0]
#删除列表元素
delnums[0]
'''nums[:]:[3,5,7,8,13,20]'''
print"nums[:]:",nums[:]
#列表脚本操作符
printlen([1,2,3])#3
print[1,2,3]+[4,5,6]#[1,2,3,4,5,6]
print['Hi!']*4#['Hi!','Hi!','Hi!','Hi!']
print3in[1,2,3]#True
forxin[1,2,3]:
printx,#123
#列表截取
L=['spam','Spam','SPAM!']
printL[2]#'SPAM!'
printL[-2]#'Spam'
printL[1:]#['Spam','SPAM!']
#列表函数&方法
lst.append('append')#在列表末尾添加新的对象
lst.insert(2,'insert')#将对象插入列表
lst.remove(1996)#移除列表中某个值的第一个匹配项
lst.reverse()#反向列表中元素,倒转
printlst.sort()#对原列表进行排序
printlst.pop(1)#移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
printlst
printlst.count('obj')#统计某个元素在列表中出现的次数
lst.index('append')#从列表中找出某个值第一个匹配项的索引位置,索引从0开始
lst.extend(lst)#在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
print'End:',lst
七、字典
字典(dictionary)是除列表之外python中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
#-*-coding:utf-8-*-
dit={'name':'Zara','age':7,'class':'First'}
dict1={'abc':456}
dict2={'abc':123,98.6:37}
seq=('name','age','sex')
#访问字典里的值
print"dit['name']:",dit['name']
print"dit['age']:",dit['age']
#修改字典
dit["age"]=27#修改已有键的值
dit["school"]="wutong"#增加新的键/值对
print"dict['age']:",dit['age']
print"dict['school']:",dit['school']
#删除字典
deldit['name']#删除键是'name'的条目
dit.clear()#清空词典所有条目
deldit#删除词典
dit={'name':'Zara','age':7,'class':'First'}
#字典内置函数&方法
cmp(dict1,dict2)#比较两个字典元素。
len(dit)#计算字典元素个数,即键的总数。
str(dit)#输出字典可打印的字符串表示。
type(dit)#返回输入的变量类型,如果变量是字典就返回字典类型。
dit.copy()#返回一个字典的浅复制
dit.fromkeys(seq)#创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
dit.get(dit['name'])#返回指定键的值,如果值不在字典中返回default值
dit.has_key('class')#如果键在字典dict里返回true,否则返回false
dit.items()#以列表返回可遍历的(键,值)元组数组
dit.keys()#以列表返回一个字典所有的键
dit.setdefault('subject','Python')#和get()类似,但如果键不已经存在于字典中,将会添加键并将值设为default
dit.update(dict2)#把字典dict2的键/值对更新到dict里
dit.values()#以列表返回字典中的所有值
dit.clear()#删除字典内所有元素
八、元祖
Python的元组(tuple)与列表类似,不同之处在于元组的元素不能修改;元组使用小括号(),列表使用方括号[];元组创建很简单,只需要在括号中添加元素,并使用逗号(,)隔开即可.
#-*-coding:utf-8-*-
tup1=('physics','chemistry',1997,2000)
tup2=(1,2,3,4,5)
tup3="a","b","c","d"
#访问元组
print"tup1[0]:",tup1[0]#physics
print"tup1[1:3]:",tup1[1:3]#('chemistry',1997)
#修改元组
tup4=tup1+tup2
printtup4#(12,34.56,'abc','xyz')
#删除元组
tup=('tup3','tup',1997,2000)
printtup
deltup
#元组索引&截取
L=('spam','Spam','SPAM!')
printL[0]#spam
printL[1]#Spam
printL[2]#'SPAM!'
printL[-2]#'Spam'
printL[1:]#['Spam','SPAM!']
#元组内置函数
printcmp(tup3,tup2)#比较两个元组元素。
len(tup3)#计算元组元素个数。
max(tup3)#返回元组中元素最大值。
min(tup3)#返回元组中元素最小值。
L=[1,2,3,4]
printL
printtuple(L)#将列表转换为元组。
九、定义字符串
\n表示换行
\t表示一个制表符
\\表示\字符本身
十、Unicode字符串
Python默认编码ASCII编码
#-*-coding:utf-8-*-
十一、数字类型转换
int(x[,base])将x转换为一个整数
float(x)将x转换到一个浮点数
complex(real[,imag])创建一个复数
str(x)将对象x转换为字符串
repr(x)将对象x转换为表达式字符串
eval(str)用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s)将序列s转换为一个元组
list(s)将序列s转换为一个列表
chr(x)将一个整数转换为一个字符
unichr(x)将一个整数转换为Unicode字符
ord(x)将一个字符转换为它的整数值
hex(x)将一个整数转换为一个十六进制字符串
oct(x)将一个整数转换为一个八进制字符串
毛票票小编特从多篇文章整理结合,刚好一起学习python。