变量four赋值数字python_python数据类型

用python做数据处理的过程中,往往因为一个很小的点折腾半天,下次再遇上,又来一次,归根结底,基础没打好。

另外,以前数据处理用的R,Python与R对数据的操作差不多,但方式存在诸多差异,容易混淆,接下来会做一次系统的python梳理。

本次梳理来源:Python3 基本数据类型 | 菜鸟教程​www.runoob.com754eca76446b2a6e03d072aaa6e4c2e8.png

python中有6个标准数据类型:数字、字符串、列表、元祖、集合、字典。

Python3 的六个标准数据类型中:

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

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

不可变的意思在于,在对象有明确的值以后,不能在对对象赋值。

数字Number

python支持int整型、float浮点型、bool布尔型、complex复数。

等号(=)用来给变量赋值。

a = 3

b = 3.0

c = True

d = 1+2j

print(a,b,c,d)

输出结果:

3 3.0 True (1+2j)

也可以同时对多个对象赋值:

a,b,c,d = 3,3.0,True,1+2j

内置的 type() 函数可以用来查询变量所指的对象类型。

print(type(a),type(b),type(c),type(d))

输出为:

当指定一个值时,Number 对象就会被创建,也可以通过del删除对象应用。

b

3.0

del b

b

Traceback (most recent call last):

File "", line 1, in

NameError: name 'b' is not defined

在使用del语句后,提示对象未被定义。

字符串String

Python中的字符串用单引号

equation?tex=%27 或双引号

equation?tex=%22 括起来,同时使用反斜杠 \

equation?tex=%5C转义特殊字符。

索引值以 0 为开始值,-1 为从末尾的开始位置。

str = "I love wangxinli"

print(len(str))#输出字符串的长度

print(str)#输出完整字符串

print(str[0:6])#输出前六个字符

print(str[-1])#输出倒数第一个字符

print(str[-5:-1])#输出倒数第五个到第倒数第二个字符

print(str[5:])#输出从第6个开始的后的所有字符

输出为:

16

I love wangxinli

I love

i

xinl

e wangxinli

Python 使用反斜杠(\)转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串,也可以使用双斜线(\\):

print("app\le")

print("app\nle")

print(r"app\nle")

print("app\\nle")

输出为:

app\le

app

le

app\nle

app\nle

字符串可以用

equation?tex=%2B 运算符连接在一起,用

equation?tex=%2A 运算符重复,后面加上数字。

print(str+"o ye")

print(str*3)

输出为:

I love wangxinlio ye

I love wangxinliI love wangxinliI love wangxinli

Python 没有单独的字符类型,一个字符就是长度为1的字符串。

Python 字符串不能被改变。向一个索引位置赋值,比如str[0] = 'm'会导致错误。

str[0] = 'm'

Traceback (most recent call last):

File "", line 1, in

TypeError: 'str' object does not support item assignment

Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。

列表List

列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

列表是写在方括号 [] 之间、用逗号分隔开的元素列表。

和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。

截取格式为:变量[头下标:尾下标],索引值以 0 为开始值,-1 为从末尾的开始位置。

list = ["abv",98,37,True,9.238,"dafei"]

listplus = ["a",3,4]

print(len(list))#输出列表元素的个数

print(list[1])#输出第二个元素

print(list[0:3])#输出第一个到第三个元素

print(list[0:])#输出所有的元素

print(list[2:-2])#输出第三个到倒数第三个

print(list+listplus)#两个列表相加

print(list*2)#列表复制

输出为:

6

98

['abv', 98, 37]

['abv', 98, 37, True, 9.238, 'dafei']

[37, True]

['abv', 98, 37, True, 9.238, 'dafei', 'a', 3, 4]

['abv', 98, 37, True, 9.238, 'dafei', 'abv', 98, 37, True, 9.238, 'dafei']

与字符串不一样,列表中的元素是可以改变的。

list[1]=2

print(list)

list[0:2]=[55,66]

print(list)

list[0:2]=[]

print(list)

输出为:

['abv', 2, 37, True, 9.238, 'dafei']

[55, 66, 37, True, 9.238, 'dafei']

[37, True, 9.238, 'dafei']

元祖Tuple

元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号()里,元素之间用逗号隔开。

元祖中的元素也可以各不相同。

tuple = ("jkl",78,999,"wang","liyan","3.14")

print(tuple)

print(tuple[2])

输出为:

('jkl', 78, 999, 'wang', 'liyan', '3.14')

999

同样试图改变元祖元素的值,会报错哦。

tuple[0]=0

Traceback (most recent call last):

File "", line 1, in

TypeError: 'tuple' object does not support item assignment

元祖的切片与列表类似,略过。

集合set

集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。

基本功能是进行成员关系测试和删除重复元素。

可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

set = {"34","abc",89,23,"liyan","wangxinli"}

if 89 in set:

print("Yes,it is true")

else :

print("o ye")

输出:

Yes,it is true

set可以进行集合操作

a = set("abhdingkeld")

d = set("jdhynfgdhf")

print(a)

print(a - d) # a 和 b 的差集

print(a | d) # a 和 b 的并集

print(a & d) # a 和 b 的交集

print(a ^ d) # a 和 b 中不同时存在的元素

输出为:

{'g', 'n', 'h', 'a', 'd', 'l', 'b', 'k', 'e', 'i'}

{'e', 'a', 'b', 'k', 'l', 'i'}

{'j', 'g', 'n', 'h', 'y', 'f', 'a', 'd', 'l', 'b', 'k', 'e', 'i'}

{'d', 'g', 'n', 'h'}

{'j', 'e', 'y', 'f', 'a', 'b', 'k', 'l', 'i'}

字符串也可以进行相应的操作

b = {"34","abc",89,23,"liyan","wangxinli"}

c = {89,23,"liyan"}

print(b-c)

输出为:

{'abc', 'wangxinli', '34'}

字典Dictionary

字典(dictionary)是Python中另一个非常有用的内置数据类型。

列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。

键(key)必须使用不可变类型。

在同一个字典中,键(key)必须是唯一的。

dictionary = {}

dictionary["one"] = 2

dictionary["two"] = "wangxinli"

dictionary["three"] = "liyan"

dictionary["four"] = "ove"

dictionary["five"] = "L"

print(dictionary)

dictionary["two"] = "345"#更改key值为"two" 的值

print(dictionary.keys())#输出所有的键值

print(dictionary.values())#输出所有值

输出为:

{'one': 2, 'two': 'wangxinli', 'three': 'liyan', 'four': 'ove', 'five': 'L'}

dict_keys(['one', 'two', 'three', 'four', 'five'])

dict_values([2, '345', 'liyan', 'ove', 'L'])

for函数对字典进行遍历

for keys in dictionary:

a = dictionary[keys]

print("the %s is %s"%(keys,a))

输出为:

the one is 2

the two is wangxinli

the three is liyan

the four is ove

the five is L

另一种实现方法,使用items()函数,输出一致。

for keys_1 ,a_1 in dictionary.items():

print("the %s is %s"%(keys_1,a_1))

Python数据类型转换

int(x, base=10)将x转换为整数型,默认为十进制

float(x)将x转化为浮点型

str(x)将x转化为字符型

tuple(s)将序列s转换为元祖

list(s)将序列 s 转换为一个列表

set(s)转换为可变集合

dict(d)创建一个字典。d 必须是一个序列 (key,value)元组

最后,常用的将列表转化为Dataframe。

a =[1,2,3]

b = [3,4,6]

c = pd.DataFrame([a,b],columns = ["one","two","three"])

print(c)

输出为:

one two three

0 1 2 3

1 3 4 6

可以看到,a和b均变成了行,预期效果是要让a和b变成列,可以有如下操作

dict_1 = {}

dict_1["one"] =a

dict_1["two"] = b

pd.DataFrame(dict_1)

输出为:

one two

0 1 3

1 2 4

2 3 6

print 函数用法总结

print输出变量比较简单,这里主要介绍一些稍微复杂的用法。

str = "the length of (%s) is %d" %('runoob',len('runoob'))

print(str)

输出为:

the length of (runoob) is 6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值