美文网首页
去面试Python工程师,这几个基础问题一定要能回答

去面试Python工程师,这几个基础问题一定要能回答

作者: 梦幻小孩斋 | 来源:发表于2021-11-29 16:38 被阅读0次
    image

    今天的面试题以基础为主,去面试Python工程师,这几个基础问题不能答错

    第1题:列表和元组有什么不同?

    列表和元组是Python中最常用的两种数据结构,字典是第三种。

    相同点:

    • 都是序列
    • 都可以存储任何数据类型
    • 可以通过索引访问

    语法差异

    使用方括号[]创建列表,而使用括号()创建元组。

    是否可变

    列表是可变的,而元组是不可变的,这标志着两者之间的关键差异。

    重用与拷贝

    元组无法复制。 因为元组是不可变的,所以运行tuple(tuple_name)将返回自己

    内存开销

    Python将低开销的较大的块分配给元组,因为它们是不可变的。 列表则分配小内存块。 与列表相比,元组的内存更小。 ' 当你拥有大量元素时,元组比列表快。 列表的长度是可变的。最后,如果你的时间不是很紧张,并且又想快速的提高,最重要的是不怕吃苦,建议你可以联系维:762459510 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~

    第2题:什么是负索引?

    Python中的序列索引可以是正也可以是负

    如果是正索引,0是序列中的第一个索引,1是第二个索引。 如果是负索引,-1是最后一个索引,-2是倒数第二个索引。

        lst=[11,22,33,44,55]
    
    

    全取列表

    >>> lst[:]
    [11, 22, 33, 44, 55]
    
    

    取不到最后一个元素

    >>> lst[:-1] # 注意这里不能输出55,因为切片操作都是左闭右开的
    [11, 22, 33, 44]
    
    

    列表倒序

    >>> lst[::-1]
    [55, 44, 33, 22, 11]
    
    

    取最后一个

    >>> lst[-1]
    55
    
    

    取第一个

    >>> lst[0]
    11
    
    

    第3题: 如何随机打乱列表中元素,要求不引用额外的内存空间?

    用 random 包中的 shuffle() 函数来实现

    import random
    random.shuffle(你的列表)
    # 举个例子:
    L1 = [1, 3, 5, 7]
    random.shuffle(L1)
    
    

    第4题:解释 Python 中的 join() 和 split() 函数?

    join() 函数可以将指定的字符添加到字符串中

    ‘1,2,3,4,5’
    
    
    a=','.join('123456')
    print(a)
    print(type(a))
    #1,2,3,4,5,6
    #<class 'str'>
    
    

    split() 函数可以用指定的字符分割字符串

    [‘1’, ‘2’, ‘3’, ‘4’, ‘5’]
    
    
    a='1,2,3,4,5,6'.split(',')
    print(a)
    print(type(a))
    #['1', '2', '3', '4', '5', '6']
    #<class 'list'>
    
    

    第5题:如何删除字符串中的前置空格?

    1. strip():把头和尾的空格去掉
    2. lstrip():把左边的空格去掉
    3. rstrip():把右边的空格去掉
    4. replace('c1','c2'):把字符串里的c1替换成c2。故可以用replace(' ','')来去掉字符串里的所有空格
    5. split():通过指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串
    6. re.split(r's+', 'a b c') # 使用正则表达式

    第6题:Python 中的 pass 语句有什么作用?

    在编写代码时只写框架思路,具体实现还未编写就可以用 pass 进行占位,使程序不报错,不会进行任何操作。

    比如:

    while False:
        pass
    
    

    pass通常用来创建一个最简单的类:

    class MyEmptyClass:
        pass
    
    

    pass在软件设计阶段也经常用来作为TODO,提醒实现相应的实现,比如:

    def readtxt(*args):
        pass # to do list
    
    

    第7题:解释 Python 中的成员运算符?

    成员运算符

    in 是判断是否包含

    通过成员运算符‘in’ 和 ‘not in’,确认一个值是否是另一个值的成员。

    print('me' in 'disappointment')#True
    print('us' in 'disappointment')#False
    
    

    身份运算符

    is 是判断内存地址

    • is 是判断两个标识符是不是引用自一个对象
    • is not 是判断两个标识符是不是引用自不同对象

    tops: in 的 not 在前,is 的 not 在后

    python、爬虫技巧资源分享添加围鑫(同音):762459510,这里有资源共享,技术解答,还有小编从最基础的Python资料到项目实战的学习资料都有整理,希望能帮助你更了解python,学习python。

    image

    相关文章

      网友评论

          本文标题:去面试Python工程师,这几个基础问题一定要能回答

          本文链接:https://www.haomeiwen.com/subject/kpxztrtx.html