python类型介绍_python的基本数据类型简介

python的基本数据类型有:数字-numbers、字符串-str、列表-list、元组-tuple、字典-dict、布尔-bool、集合-set

下面来个概览先大概了解一下,后面博文中咱再细说~

1.数字-numbers

数字类型就是我们日常生活中所说的数字,python中的数字不分是整数还是小数,正数还输负数,超长数,python中的int足够强大到可以表示任意的数

num1 = 10

num2 = -10

num3 = 1.1

num4 = -1.1

num5 = 222222222222222222222222222222222222222222222222222222

num6 = 3.14j

print(type(num1), num1)

print(type(num2), num2)

print(type(num3), num3)

print(type(num4), num4)

print(type(num5), num5)

print(type(num6), num6)

输出结果:

10

-10

1.1

-1.1

222222222222222222222222222222222222222222222222222222

3.14j

注:python3中只有int、float、complex类型,已经没有Lang类型了,超长数据也是int类型

数据类型没有什么重要的方法,如果硬要说一个相关的就是int(),float(),可以把其他类型转换为int类型、float类型

s = "123"

i = int(s)

f = float(s)

print(type(i),i)

print(type(f),f)

输出结果:

123

123.0

2.字符串-str

引号引起来的一串字符,这串字符中可以有数字、字母、符号、汉字都可以

python中既可以用单引号也可以用双引号,不过要成对出现,如果字符串内部有单引号,那整个串就用双引号,反之,串内有双引号,整个串就用双引号

str1 = "123()— = + !@#¥%……*( 哈哈哈"

str2 = '字符串内部有"双引号'

str3 = "字符串内部有'双引号"

print(type(str1), str1)

print(type(str2), str2)

print(type(str3), str3)

打印结果为:

123()— = + !@#¥%……*( 哈哈哈

字符串内部有"双引号

字符串内部有'双引号

注:python3中不用写【# -*- coding: UTF-8 -*-】就可以直接打印中文

str类型的方法很多很多,先给一个list,在后面会专门来一个str方法的讲解

capitalize、casefold、center、count、encode、endswith、expandtabs、find、format、format_map、index、isalnum、isalpha、isascii、isdecimal、isdigit、isidentifier、islower、isnumeric、isprintable、isspace、istitle、isupper、join、ljust、lower、lstrip、maketrans、partition、replace、rfind、rindex、rjust、rpartition、rsplit、rstrip、split、splitlines、startwith、strip、swapcase、title、translate、upper、zfill,还有一些魔法方法,其中重要的必须要知道的:find、format、index、join、replace、split、strip

3.列表-list

由中括号括起来的一串字符,这就是列表,列表可容一切字符

lst = [1, "a", True, (1, 2), [12, "aa"], {"a": 1, "b": "b"}]

print(type(lst))

print(lst)

输出结果

[1, 'a', True, (1, 2), [12, 'aa'], {'a': 1, 'b': 'b'}]

列表的特性:可变、有序、可迭代性

由于【可变】,所以它有append、clear、count、extend、insert、pop、remove、copy方法

由于【有序】,所以它有index、reverse、sort

它还可以使用切片、in、for循环

list上面的这些特性和方法都很重要,要记住~~~

4.元组-tuple

由圆括号括起来的一串字符,这就是元组,元组也可容一切字符(这里是不是隐隐有种见过类似一句话的感觉~~~)

tup = (1, "a", True, (1, 2), [12, "aa"], {"a": 1, "b": "b"}, )

print(type(tup))

print(tup)

输出结果:

(1, 'a', True, (1, 2), [12, 'aa'], {'a': 1, 'b': 'b'})

注:

元组的特性:有序、不可修改,切记:元组不可修改,不过是不可修改一级元素,如果一个元素中的元素是可变对象的话,那个元素是可修改的

tup = (1, "a", True, (1, 2), [12, "aa"], {"a": 1, "b": "b"}, )

print(type(tup))

print(tup)

tup[4].append("haha")

print(tup)

输出结果:

(1, 'a', True, (1, 2), [12, 'aa'], {'a': 1, 'b': 'b'})

(1, 'a', True, (1, 2), [12, 'aa', 'haha'], {'a': 1, 'b': 'b'})

元组的方法只有两个:count、index

索引、in、for循环都是适合元组的

5.字典-dict

由大括号括起来的一对对的键值对,这就是字典,字典的值也可容一切字符(多么熟悉的一句话啊~~)

科普-什么是键值对:就是【键和值,两个配成一对】,就是【1: "a"】,其中写在前面的是键,后面的是值,中间用冒号隔开,一对对键值对用逗号隔开。键不可重复,值可以重复

ps:键重复以后执行不会报错,但是只显示最后一个,所以这个要注意,不然在你不知道的情况下会漏掉了一些数据

dic = {1: "a", "a": (1, 2), "bb": [12, "aa"], 33: {"a": 1, "b": "b"}}

print(type(dic))

print(dic)

输出结果:

{1: 'a', 'a': (1, 2), 'bb': [12, 'aa'], 33: {'a': 1, 'b': 'b'}}

dict字典的特性:无序、可变的

dict的方法有:items、fromkeys、get、keys、values、update、pop、popitem、clear、copy、setdefault

dict不支持索引,它是通过key来找元素的

dict支持in、for循环,但是迭代的时候是默认以key值迭代的

dic = {"a":1,"2":"b"}

k1 = "a" in dic

print(k1)

k2 = "a" in dic.keys()

print(k2)

输出结果:

True

True

也可以用value值来迭代:

dic = {"a":1,"2":"b"}

v = "b" in dic.values()

print(v)

输出结果:

True

6.布尔-bool

布尔类型很简单,就两个值:真True、假False(python中如果写出true、false不代表是bool类型值)

其他的话,只有这6个值可代指False:【None、0、""、{}、[]、()】,除了这6个值,剩下所有所有的值都代指的是True

lst = [None, 0, "", {}, [], ()]

for tmp in lst:

if not tmp:

print("True")

else:

print("False")

输出结果:

True

True

True

True

True

True

Tips:一般布尔用在判断条件中,比如if条件、while条件中

7.集合-set

由大括号括起来的一串值,它和字典虽然都是大括号括起来的,但是字典中存放的是键值对,而集合中存放的是一个个的值

直接上实例:

s = {1, "a", True, (1, 2)}

print(type(s))

print(s)

输出结果:

{1, (1, 2), 'a'}

注意:set集合中不能放可变对象,就是不能放列表、字典,只能放数字、字符串、元组、布尔值,这一点和字典的键的规则一样

集合的特性:无序、去重、可变

这里出现一个其他数据类型没有见过的特性【去重】,意思是集合中的元素都是不相同的,比如:在定义集合时写的是【s = {1, 2, 4, "a" , 2, "a"}】,但执行代码后s变量实际上存进去的是【s = {1, 2, "a", 4}]

集合的方法:add、clear、copy、difference、difference_update、discard、intersection、intersection_update、isdisjoint、issubset、pop、remove、symmetric_difference、symmetric_difference_update、union、update

集合还可以使用一些数值运算符:+、-、|、^、&、>、<

由于集合的无序的,所以它不支持索引、切片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值