Bootstrap

大一python考试知识点_python常考知识点

字符串的不可变性

字符串是一种不可变数据类型,即它的值不能被修改,这意味着如果想修改一个字符串,或者截取一个字符串,或者再字符串末尾连接另一个字符串等等,就必须新建一个字符串

元组

元组是一种不可变类型,正因为这个原因,元组能做一些列表不能做的事情,例如,元组可以做一个字典的key,另外,当处理一组对象是,这个组默认是元组类型

元组不可变也是有一定限度的,若元组中含有可变的元素,那么,在这个层面上的元组也是可以改变的

a = ([1,'s'], 'a', 1)

a[0][1] = 2

print(a)

>>> ([1,2], 'a', 1)

字典

字典中的键是不可以改变的,所以数字和字符串可以作为字典中的键,但是列表和其他字典则不行

不预序一个键对应多个值,键必须是可以哈希的

字典可以和所有的标准类型操作符一起工作,但却不支持拼接和重复的操作。

# 当字典作为参数传入函数后,在函数内的修改操作会影响函数外的字典的值

dic = {1:'1', 2:'2'}

def foo(d):

d[3] = '3'

foo(dic)

print(dic)

>>> {1:'1', 2:'2', 3:'3'}

is 和 == 的区别

在python中一切都是对象。

Python中对象包含的三个基本要素,分别是:

id(身份标识)

type(数据类型)

value(值)

对象之间比较是否相等可以用==,也可以用is,但判断的内容不同:

is 比较的是两个对象的id值是否相等,即is用来比较是否引用同一个对象

== 比较的是两个对象的value是否相等,默认会调用对象的_eq_()方法。

import copy

a=[1,2,3]

b=a

c=copy.copy(a)

print("a的id:",id(a)) # a的id: 1901149178696

print("b的id:",id(b)) # b的id: 1901149178696

print("c的id:",id(c)) # c的id: 1901145557768

print("a==b",a==b) # a==b True

print("a is b",a is b) # a is b True

print("a==c",a==c) # a==c True

print("a is c",a is c) # a is c False

;