第1题:字符串的拼接–怎样高效的拼接两个字符串?
字符串拼接的几种要领
- 加号
- 逗号
- 直接衔接
- 格式化
- join
- 多行字符串拼接()
加号
print('Python' + 'Plus')
逗号
print("Hello", "Python")
直接衔接
print("Hello" "Python")
格式化
print('%s %s'%('Python', 'PLUS'))
join
str_list = ['Python', 'Plus']
a = ''
print(a.join(str_list))
多行字符串拼接()
sql = ('select *'
'from users'
'where id=666')
print(sql)
一样寻常状况,人人对照喜好用“+”拼接字符串,然则这个要领并非高效的,
由于若是须要拼接的字符串有许多(n个)的状况下,
运用”+”的话,python诠释器会请求n-1次内存空间,
然后举行拷贝,由于字符串在python中是不可变的,
以是当举行拼接的时刻,会须要请求一个新的内存空间。
以是,准确谜底是,运用.join(list),由于它只运用了一次内存空间
第2题: list = ['a','a','a',1,2,3,4,5,'A','B','C']提掏出”12345”?
这个考点考了python的解压赋值的知识点,即 a,b,c,middle,d,e,f = list, middle = [1,2,3,4,5]。
注重,解压赋值提掏出来的是列表py list = ['a','a','a',1,2,3,4,5,'A','B','C'] a,b,c,*middle,d,e,f = list print(middle) print(type(middle))
第3题: 甚么是pickling和unpickling?
为了让用户在寻常的编程和测试时生存庞杂的数据范例,python供应了规范模块,称为pickle
。
这个模块可以或许将险些任何的python对象(以至是python的代码),转换为字符串透露表现,这个历程称为pickling
。
从存储的字符串中检索原始Python对象的历程称为unpickling
。
第4题: 说一说Python自省?
在python中,搜检某些事物以肯定它是甚么、它晓得甚么以及它能做甚么。
自省向顺序员供应了极大的灵活性和控制力。
说的更简朴直白一点:==自省就是面向对象的言语所写的顺序在运行时,可以或许晓得对象的范例。简朴一句就是,运行时可以或许获知对象的范例。==
比方python, buby, object-C, c++都有自省的才能,这里面的c++的自省的才能最弱,只可以或许晓得是甚么范例,而像python可以或许晓得是甚么范例,另有甚么属性。
Python中对照罕见的自省(introspection)机制(函数用法)有: dir()
,type()
, hasattr()
, isinstance()
,经由过程这些函数,我们可以或许在顺序运行时得知对象的范例,推断对象是不是存在某个属性,接见对象的属性。
- dir() 函数是 Python 自省机制中最有名的部分了。它返回通报给它的任何对象的属性称号经由排序的列表。若是不指定对象,则 dir() 返回以后作用域中的称号。
- type() 函数有助于我们肯定对象是字符串照样整数,或是别的范例的对象。
- 对象具有属性,而且 dir() 函数会返回这些属性的列表。然则,偶然我们只想测试一个或多个属性是不是存在。若是对象具有我们正在斟酌的属性,那末一般愿望只检索该属性。这个义务可以或许由 hasattr() 和 getattr() 函数来完成。
- isinstance() 函数测试对象,以肯定它是不是是某个特定范例或定制类的实例。
其他可以或许参考博客:https://blog.csdn.net/qq_34979346/article/details/83218262
第5题:甚么是python山公补钉python monkey patch?
monkey patch (山公补钉)
用来在运行时动态修正已有的代码,而不须要修正原始代码。
在Python中,术语monkey补钉仅指run-time上的类或模块的动态修正
>>> class A:
def func(self):
print("Hi")
>>> def monkey(self):
print("Hi, monkey")
>>> m.A.func = monkey
>>> a = m.A()
>>> a.func()
Hi, monkey
民众账号:非本科顺序员,来吧
微信搜刮htmlhttp
就可以找到不一样的出色
Comment here is closed