一、python中经常使用的数据结构有哪些?请简要介绍一下。
列表list,元祖tuple,字典dict,字符串str,集合ser,数字int
python
二、简要描述python中单引号、双引号、三引号的区别。
首先,单引号和双引号在使用时基本上没有什么区别,惟一须要注意的是:当字符串中有单引号时,最好在外面使用双引号;
当有双引号时,最好在外面使用单引号。
三引号通常不经常使用,除了用来作注释以外,还能够用来打印多行字符串。特殊用途,是能够打印多行字符串。数据结构
三、如何在一个function里设置一个全局的变量。
在函数内部是没法定义一个全局变量的,只能作到修改已经定义的全局变量。app
四、python里面如何拷贝一个对象?(赋值、浅拷贝、深拷贝的区别
(1)赋值:其实就是对象的引用。至关于C的指针,修改了其中一个对象,另外一个跟着改变。
(2)浅拷贝:拷贝父对象,可是不会拷贝父对象的子对象。
(3)深拷贝:彻底拷贝了父对象和子对象函数
总结:
(1)当对象为不可变类型时,不管是赋值,浅拷贝仍是深拷贝,那么改变其中一个值时,另外一个都是不会跟着变化的。
(2)当对象为可变对象时,若是是赋值和浅拷贝,那么改变其中任意一个值,那么另外一个会跟着发生变化的;若是是深拷贝,是不会跟着发生改变的。编码
五、若是custname字符串的编码格式为uft-8,如何将custname的内容转化为gb18030的字符串?
先将custname编码格式转换为unicode,在转换为gb18030。即custname.decode('utf-8').encode('gb18030')。spa
六、请写出一段python代码实现删除list中的重复元素。
a = [1, 2, 3, 4, 5, 2, 3]
def fun1(a):
a = list(set(a))
print(a)
fun1(a)
指针
七、这两个参数是什么意思?args和 kwargs。
*args和**kwargs主要用于函数定义
*args 是用来发送一个非键值对的可变数量的参数列表给一个函数;
**kwargs 容许你将不定长度的键值对, 做为参数传递给一个函数
code
八、
(1)统计以下list单词及其出现的次数。
a=['apple', 'banana', 'apple', 'tomato', 'orange', 'apple', 'banana', 'watermeton']对象
from collections import Counter
a = Counter(a)
print(a)排序
dic = {}
for i in a:
dic[i] = dic.get(i,0) + 1
print(dic)
(2)给列表中的字典排序:例若有以下list对象: 将alist中的元素按照age从小到大排序。
alist=[{"name":"a", "age":20}, {"name":"b", "age":30}, {"name":"c", "age":25}]
alist2 = sorted(alist,key=lambda i:i["age"],reverse=False)
print(alist2)