1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > Python入门(三)变量类型及数据类型转换

Python入门(三)变量类型及数据类型转换

时间:2019-07-10 18:15:07

相关推荐

Python入门(三)变量类型及数据类型转换

变量

顾名思义,就是程序运行中值能改变的量,而且在变量使用之前,需要对其赋值。

变量名的命名及使用规则:

可以包括字母、数字、下划线,但不能以数字开头;字母区分大小写,即同一字母的大小写代表不同的变量;尽可能根据变量数据特点命名,可提高程序的可读性;变量名不要和Python的BIF重名,虽然Python中可以对BIF进行赋值,但是实际编程中很可能会遇到BUG,在编译器中BIF为紫色。等号"="是赋值的意思,左边是变量名,右边是值。

1) 单变量赋值

>>> year=

2)多变量赋值

>>> a = b = c = 1

>>> a, b, c = 1, 2.0, 'DJY'

数据类型

Python有五个标准的数据类型:

numbers(数字):int,float,bool,complexstr(字符串)list(列表)tuple(元组)dict(字典)set(集合)

int

Python可以处理任意大小的整数,例如:

>>> -12345678*9876543 #输出结果 -121932619631154

计算机中常使用十六进制表示整数,例如:0xFFEC,0xAABB。

float

有小数点的数字就可以理解为float型数据,不区分单双精度,并且可以通过round()等函数对其精度进行控制,例如:

>>> round(11.23456789,2) #输出结果 11.23

对于很大或者很小的数,我们通常采用科学计数法,把10用E代替,例如:1.23E6,2.04E-23。

bool

一个布尔值只有True、False(注意大小写)两种值;布尔值可以进行not、and和or运算:

not是非运算,把 True 变成 False,False 变成 True;

and是与运算,值都为 True时,结果才为True;

or是或运算,只要有一个值为 True,结果就是 True。

complex

>>> (2+3j)*(4+6j) #输出结果 (-10+24j)

>>> (1+2j).imag #输出结果 2.0

str

由数字、字母、下划线组成,表示方法有单引号,双引号,三引号(三单引号和三双引号)三种,例:'djy',"djy",''' djy''',"""djy""",注意Python中单字符也是字符串;

list

是一种有序的集合,可以包含整数,浮点数,字符串,对象,可以随时添加和删除其中的元素。

普通列表

>>> player=['酷狗音乐','网易云音乐','QQ音乐','虾米音乐']>>> type(player) <class 'list'>

混合列表

>>> music=[1996,'11:59','IF','人间失格',['华晨宇','丁可']]>>> type(music) <class 'list'>

空列表

>>> empty=[]>>> empty []

tuple

tuple 和 list 非常类似,只是,tuple一旦创建完毕,就不能修改了。

普通元祖

>>> tuple1=1, #或者tuple1=(1, ) 注意“,”是关键>>> type(tuple1)<class 'tuple'>

空元祖

>>> tuple1=()>>> tuple1()

dict

dict可存放任意类型对象,但它是通过键和键值来存储,其中键不可变且不允许同一个键出现两次,值可以取任何数据类型。

dict = {key1 : value1, key2 : value2 }

>>> dict1= {'singer': 'GEM', 'sex': 'female', 'song': '查克靠近'}>>> type(dict1)<class 'dict'>

>>> dict2= dict(singer='GEM', sex= 'female', song='查克靠近')>>> dict2{'singer': 'GEM', 'sex': 'female', 'song': '查克靠近'}>>> type(dict2)<class 'dict'>

另外,通过给键值赋值的方式创建字典时,如果键值存在则自动更新键值内容,如果不存在此键值将会自动在字典里添加此键值。

set

set 和 list 类似,但是set中的元素不可重复,而且是无序的,这点和 dict 的 key很像。

>>> set1= {'酷狗音乐', '网易云音乐', '虾米音乐'}>>> type(set1) <class 'set'>

数据类型转换

将一个字符串或数字转换为整型:int(x[,base])

x---字符串或数字;

base---进制数,默认十进制;

>>> int() 0

>>> int(1)1

>>> int(1.8)1

>>> int('0xff',16)255

将整数和字符串转换成浮点数:float(x)

x--- 整数或字符串

>>> float() 0.0

>>> float(1) 1.0

>>> float('123') 123.0

将一个字符串或数转化为复数或创建一个复数,如果第一个参数为字符串,则无需设置第二个参数:complex([real[, imag]])

real---int,float,str;

imag---int,float;

>>> complex()0j

>>> complex(1) (1+0j)

>>> complex("1") (1+0j)

>>> complex("1+2j") # 这个地方"+"号两边不能有空格,否则会报错 (1+2j)

将对象转化为字符串型:str(x)

x---对象

>>> str1=100 >>> str(str1) '100'

>>> dict1= {'singer': 'GEM', 'sex': 'female', 'song': '查克靠近'}>>> str(dict1) "{'singer': 'GEM', 'sex': 'female', 'song': '查克靠近'}"

计算字符串中的有效Python表达式,并返回一个对象:eval(expression[, globals[, locals]])

expression---表达式。

globals---变量作用域,全局命名空间,如果设置,则必须是一个字典对象。

locals---变量作用域,局部命名空间,如果设置,则可是任何映射对象。

>>> x = 2>>> eval("x + 4")6

>>> eval('pow(2,2)') 4

将序列转换为元组:tuple( seq )

seq---序列

>>> tuple((1,2,3)) #将tuple转化为tuple (1, 2, 3,)

>>> tuple([1,2,3])#将list转化为tuple (1, 2, 3)

>>> tuple({1:2,3:4}) #将dict转化为tuple (1, 3)

将元组转换为列表:list( seq )

seq---序列

>>> tuple1=(1,'djy') >>> list1=list(tuple1) >>> list1 [1, 'djy']

转化为一个无序不重复元素集,还可计算交集、并集、差集的集合:set([iterable])

iterable--- 可迭代对象

>>> set1='djy' >>> set(set1) {'d', 'y', 'j'}

>>> set1='djy' >>> set2='fxw' >>> set(set1) & set(set2) #取交集 set()>>> set(set1) | set(set2) #取并集 {'w', 'y', 'j', 'f', 'd', 'x'}>>> set(set1) - set(set2) #取差集 {'d', 'y', 'j'}

创建一个字典:dict(kwarg)、dict(mapping,kwarg)、dict(iterable, **kwarg)

**kwargs---关键字;

mapping---元素的容器;

iterable---可迭代对象;

>>> dict(singer='GEM', sex='female', song='查克靠近'){'singer': 'GEM', 'sex': 'female', 'song': '查克靠近'}>>> dict(zip(['A', 'B', 'C'], ['a','b','c'])) # 映射函数{'A': 'a', 'B': 'b', 'C': 'c'}>>> dict([('A','a'),('B','b'),('C','c')]) #可迭代对象{'A': 'a', 'B': 'b', 'C': 'c'}

创建一个不可变集合:frozenset([iterable])

iterable---可迭代的对象,比如列表、字典、元组等

>>> a = frozenset('fxwdjy') >>> afrozenset({'w', 'y', 'f', 'j', 'd', 'x'})

将一个字符转换为它的十进制值:ord(c)

c---字符

>>> ord('a')97

将一个整数转换为一个八进制、十六进制字符串:oct(x)、hex(x)

x---10进制整数

>>> oct(10)'0o12'

>>> hex(10) '0xa'

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。