python语言中1010二进制_爱校码 - Python 语言基础二

本文详细介绍了Python中的数据类型,包括Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Dictionary(字典)和Set(集合)。对于数字,讲解了整型(int)、浮点型(float)、布尔型(bool)和复数(complex)的使用,包括二进制、八进制和十六进制的表示。字符串(String)的访问和操作,列表(List)的创建、访问、修改和删除,元组(Tuple)的定义和不可变特性,字典(Dictionary)的键值对操作,以及集合(Set)的无序唯一性特点和基本操作。
摘要由CSDN通过智能技术生成

Python中基本的数据类型有Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Dictionary(字典)、Set(集合)等。

用type()可以查看变量和常量的数据类型:

>>> a1 = 23

>>> print(type(a1))

>>> a, b, c, d=20, 5.5, True, 4+3j

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

>>>

>>> l, t, s = [3,2,5], (1,3,4), {'zhang':4, 'wang':6, 'liu':25}

>>> print(type(l), type(t), type(s))

一、Number(数字)

Python支持 int、float、bool、complex(复数)。当定义一个变量并引用数字时,Number 对象被创建。

>>> num1 = 5

>>> num2 = 7+8j

创建的Number对象,可以通过del语句进行删除。

>>> del num1

>>> del num2

注意:

可以同时为多个变量赋值,如a, b = 3, 4;

数值的除法(/)总是返回一个浮点数,如10/5,结果为2.0;

在混合计算时,Python会把整型转换成为浮点型。

1. int(整型)

Python可以处理任意大小的整数(包括负整数),整数的表示方法和数学上的写法一样。如3,200,-9080,0,1 …… 。 Python语言中整数的二进制、八进制和十六进制表示:

二进制 0b或0B 由字符0和1组成,如0b101、0B101

八进制 0o或0O 由字符0到7组成,如0o711、0O711

十六进制 0x或0X 由字符0到9、a到f、A到F组成,如0xABC

十进制转二进制,八进制,十六进制,格式如下:

>>> a = bin(1010) # 二进制

>>> b = oct(1010) # 八进制

>>> c = hex(1010) # 十六进制

>>> print(str(a),str(b),str(c))

0b1111110010 0o1762 0x3f2

2. float(浮点型)

浮点数就是小数。按科学计数法表示时,浮点数的小数点是可变的,如1.23×10^9和12.3×10^8是相等的。可以把10用e替代,1.23×10^9就是1.23e9,或是12.3e8,0.000012可以写成1.2e-5。

>>> c1 = 1.34e3

>>> print(c1)

1340.0

>>> c2 = 1.343e-3

>>> print(c2)

0.001343

浮点数和整数在计算机内部存储方式不同,整数是精确的,而浮点数运算时会有四舍五入的误差。

3. bool(布尔型)

布尔值只有True、False两种值,非True则False,注意大小写。

vv

>>> flag = True

>>> num = 4

>>> while flag:

... print("张三")

... num = num-1

... if num == 0:

... flag = False

...

张三

张三

张三

张三

>>>

上述示例中while为一个循环语句,当flag为True时,循环执行后面的语句,if为一个判断语句,当num=0成立时,执行下面的语句。在上面示例中要注意if num == 0中的“==”不要写成“=”。“==”表示判断是否相等,而“=”表示赋值,例如flag=False表示将False的值赋给flag变量。

注意:

前面讲过在Python Shell交互环境下编写代码时,>>>是Python解释器的提示符,不是代码的一部分,同样上面示例中出现的...也是一个提示符,表示待输入代码。

4. complex(复数)

复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a, b)表示, 复数的实部 a 和虚部 b 都可以是浮点型。

>>> complex(3, 4)

(3+4j)

二、 String(字符串)

字符串是以"或'括起来的任意文本(如'abc',"xyz")。 "或'本身只是一种表示方式,不是字符串的一部分。因此,字符串'abc'只有a,b,c这三个字符。

>>> my = 'ab,c'

>>> print(my)

ab,c

访问子字符串,可以使用方括号来截取字符串。

>>> my= "Good morning"

>>> print("my[0]:", my[0])

my[0]: G

>>>

>>> print("my[0:8]:", my[0:8])

my[0:8]: Good mor

可以截取字符串的一部分并与其他字符串拼接。

my= "Hello"

>>> print(my[:6] + " 张三")

Hello 张三

>>>

三、 List(列表)

列表(list)是Python中最基本的数据结构。列表中的每个元素都分配一个索引,第一个索引是0,第二个是1,依次类推。 
   在Python中定义列表需要使用方括号,列表中的数据项都包含在方括号中,数据项之间使用逗号分隔。

1. 创建列表

(1) 列表中的数据可以是任意数据类型,甚至可以是不同类型的混合。

>>> list = [3, 4, 'abc', "张三"]

>>> print(list)

[3, 4, 'abc', '张三']

(2) 列表中的数据除了基本的数据类型,还可以是其他复杂的数据结构。

>>> list = [ 3, 4, 'a', [3, 4, 5] ]

>>> print(list)

[3, 4, 'a', [3, 4, 5]]

2. 操作列表

列表创建完成后,可以进行访问、修改、删除、插入等操作,即列表是可变的数据类型。

(1) 访问列表中的值

使用下标索引来访问列表中的值,同样也可以使用方括号的形式截取字符。

>>> li = ['物理, '化学', 2019, 2020]

>>> print("li[0]:", li[0]) #访问列表的第一个元素。

li[0]: 物理

>>> print("li[2]:", li[2])

li[2]: 2019

(2) 修改列表项

可以对列表的数据项进行修改。

>>> li = ['物理, '化学', 2019, 2020]

>>> print("li[2]:", li[2])

li[2]: 2019

>>> li[2] = 2003 #修改列表

>>> print("li[2]:", li[2])

li[2]: 2003

>>> print(li)

['物理', '化学', 2003, 2020]

(3) 删除列表中的元素

可以使用del或pop()函数来删除列表中指定位置的元素。

>>> li = ['物理', '化学', 2003, 2020]

>>> print(li)

['物理', '化学', 2003, 2020]

>>> del li[2]

>>> print(li)

['物理', '化学', 2020]

>>> li.pop(1)

'化学'

>>> print(li)

['物理', 2020]

(4) 在某一位置插入元素

用 insert(i, x) 函数在位置 i 处插入元素 x,原来 i 位置及其后的元素依次后移,也可以使用append()方法在末尾添加元素。

>>> li = ['物理', '化学', 2003, 2020]

>>> print(li)

['物理', '化学', 2003, 2020]

>>> li.insert(2, '王五')

['物理', '化学', '王五', 2003, 2020]

>>>

>>> li.append("李四")

>>> print(li)

['物理', '化学', '王五', 2003, 2020, '李四']

四、 Tuple(元组)

元组(tuple)和列表十分类似,只是元组的元素是不可变的,即不能修改元组。正是由于元组不可变,一般用于Python中定义一组不需要改变的值。在Python中定义元组使用圆括号,元组中的项目同样使用逗号分隔。

>>> tu = (4, 5, 7, '张三')

>>> print(tu)

(4, 5, 7, '张三')

空的元组由一对空的圆括号组成,如tu1=()。

注意:

定义只有1个元素的元组时,必须要在这个元素后面跟一个逗号。

>>> a = (1)

>>> type(a)

>>> print(a)

1

>>>

>>> tu = (1, )

>>> type(tu)

>>> print(tu)

(1,)

五、 Dictionary(字典)

字典(dict)这种数据结构类似通讯录,有一个名字和名字对应的信息,可以通过名字查找对应的信息,在字典中名字叫‘键’,对应的内容叫‘值’。字典就是一个键/值对(key/value)的集合。在Python中定义字典使用花括号,字典中的键/值对之间使用逗号分隔,键和值之间用冒号分隔。

>>> dict = {'name':'张三', 'sex':'男', 'major':'软件技术'}

>>> print(dict)

{'name':'张三', 'sex':'男', 'major':'软件技术'}

>>> print(dict['major'])

软件技术

操作字典

(1) 把数据放入dict

可以直接对单个键赋值的方法来将数据放入字典。

>>> dict = {'name':'张三', 'sex':'男', 'major':'软件技术'}

>>> print(dict)

{'name':'张三', 'sex':'男', 'major':'软件技术'}

>>> dict['city'] = '广州'

>>> print(dict)

{'name':'张三', 'sex':'男', 'major':'软件技术','city':'广州'}

(2) 由于一个key只对应一个value,所以,多次对一个key放入value,后面的值会把前面的值覆盖。

>>> dict = {'name':'张三', 'sex':'男', 'major':'软件技术','city':'广州'}

>>> dict['name'] = '李四'

>>> print(dict)

{'name':'李四', 'sex':'男', 'major':'软件技术','city':'广州'}

>>> dict['name'] = '王麻子'

>>> print(dict)

{'name':'王麻子', 'sex':'男', 'major':'软件技术','city':'广州'}

(3) 删除键/值对

用pop(key)的方法删除一个键值对,对应的value也会从dict中删除。

>>> dict = {'name':'王麻子', 'sex':'男', 'major':'软件技术','city':'广州'}

>>> dict.pop('city')

'广州'

>>> print(dict)

{'name':'王麻子', 'sex':'男', 'major':'软件技术'}

六、Set(集合)

集合是一组无序的唯一元素序列。可以使用大括号{ } 或者 set() 函数创建集合,而创建一个空集合必须用 set()函数而不是 大括号{ },因为 { } 是用来创建一个空字典。并没有像列表和字典的那样的内置语法创建一个空集合,只能使用set()来达到这个目的,但可以用大括号{ }来创建一个集合,只要集合中包含值。对字典来说,用冒号将一对键值分开,每对键值之间用逗号间隔,如{'key1':'value1','key2':'value2'};对集合而言,只要使用逗号来分割值即可,如{'value1','value2'}。

>>> student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}

>>> print(student) # 输出集合,重复的元素被自动去掉

{'Mary', 'Jim', 'Jack', 'Rose', 'Tom'}

>>> a = set('abracadabra¡')

>>> print(a)

{'c', '¡', 'b', 'd', 'r', 'a'}

>>>

若留意输出的结果,则会看到集合中的元素并没有按照加入时的顺序展示出来,这是因为集合是无序的,所以不能对其进行索引查找。使用集合的主要目的是将全部事物分为两组:“属于集合的事物”和“不属于集合的事物”。

>>> 'Mary' in student

True

>>> 'naicy' in student

False

>>>

集合的基本操作

1. 添加元素

>>> my_set = set()

>>> my_set.add('hello') #将元素`'hello'`添加到集合my_set中,如果元素已存在,则不进行任何操作

>>> print(my_set)

{'hello'}

>>> my_set.update({1,2},[3,4],(5,6),{'a':7,'b':8}) #添加元素,且参数可以是集合,列表,元组,字典等

>>> print(my_set)

{1, 2, 3, 4, 5, 6, 'b', 'a', 'hello'}

>>>

2.移除元素

>>> my_set.remove('hello') #将元素'hello'从集合my_set中移除,如果元素不存在,则会发生错误

>>> print(my_set)

{1, 2, 3, 4, 5, 6, 'b', 'a'}

>>> my_set.discard('hello') #还有一个方法discard(),将元素'hello'从集合my_set中移除,如果元素不存在,则不会发生错误

>>> print(my_set)

{1, 2, 3, 4, 5, 6, 'b', 'a'}

>>> my_set.pop() #随机删除集合中的一个元素

1

>>> print(my_set)

{2, 3, 4, 5, 6, 'b', 'a'}

>>>

3.计算集合元素个数

>>> len(my_set)

7

>>>

4.清空集合

>>> my_set.clear()

>>> print(my_set)

set()

>>>

5. 集合的运算

>>> s1 = set(['a','b','c','d'])

>>> s2 = set('cdef')

>>> A = s1 | s2 #求集合s1与集合s2的并集

>>> print(A)

{'c', 'e', 'f', 'b', 'd', 'a'}

>>> B = s1 & s2 #求集合s1与集合s2的交集

>>> print(B)

{'c', 'd'}

>>> C = s1 - s2 #求集合s1与集合s2的差集,该集合是s1的成员,但不是s2的成员

>>> print(C)

{'b', 'a'}

>>> D = s1 ^ s2 #求集合s1与集合s2的差分(对称差集),是集合的异或运算,该集合是s1或s2的成员,但不是s1和s2共有的成员

>>> print(D)

{'e', 'f', 'b', 'a'}

>>>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值