ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python面试题(11-22)

2021-10-31 11:04:05  阅读:148  来源: 互联网

标签:11 面试题 python 字符串 url Unicode print


11、python递归的最大层数?

一般计算机默认的最大递归深度在1000左右,python最大递归深度一般在4000左右,跟计算 机的性能有关系,这个数不是一个定数,可通过一下方式测试

import sys
print(sys.getrecursionlimit())
print(sys.setrecursionlimit(10000))
12,如何实现 “1,2,3” 变成 [‘1’,’2’,’3’] ?
如何实现[‘1’,’2’,’3’]变成[1,2,3] ?
#“1,2,3” 变成 [‘1’,’2’,’3’]
a ='1,2,3'.split(',')

#[‘1’,’2’,’3’]变成[1,2,3]
a=['1','2','3']
b = [int(i) for i in a]
13,比较: a = [1,2,3] 和 b = [(1),(2),(3) ] 以及 b = [(1,),(2,),(3,) ] 的区别?

a = [1,2,3]就是一个普通列表

b = [(1),(2),(3) ]

b = [(1,),(2,),(3,) ] 包含一个个元组的列表

14,如何用一行代码生成[1,4,9,16,25,36,49,64,81,100] ?
a = [i*i for i in range(1,11)]
15,一行代码实现删除列表中重复的值 ?
>>>list=[11,55,11,84,55,96,65,96]
>>> print(sorted(set(list),key=list.index))
[11, 55, 84, 96, 65]

 

16、ascii、unicode、utf-8、gbk 区别?

  • ASCII (American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,共定义了128个字符 。

  • Unicode:为了统一世界各国语言的不同,统一用2个bytes代表一个字符,特点:速度快,但浪费空间

  • utd8:为了改变Unicode的这种缺点,规定一个英文字符用一个字节表示,一个中文字符用三个字节表示,特点:节省空间,速度慢

  • gbk:是中文的字符编码,用2个字节代表一个字符

17、列举 Python2和Python3的区别?

  1. 默认编码:2–>ascii,3–>utf-8

  2. print的区别:python2中print是一个语句,不论想输出什么,直接放到print关键字后面即可。python3里,print()是一个函数,像其他函数一样,print()需要你将要输出的东西作为参数传给它。

  3. xrange()

    python2里,有两种方法获得一定范围内的数字:range(),返回一个列表,还有xrange(),返回一个迭代器。 python3 里,range()返回迭代器,xrange()不再存在。

  4. 字符串:python2中有两种字符串类型:Unicode字符串和非Unicode字符串。Python3中只有一种类型:Unicode字符串

18,如何在函数中设置一个全局变量 ?

在函数内部,通过global声明,使在函数内部中设置一个全局变量,这个全局变量可以在任何函数中调用

url='http://www.baidu.com'
def tt():
   global url
   url = url+'#aa'

def aa():
   if __name__=="__main__":
       tt()
       print(url)
aa()
19,常用字符串格式化哪几种?

% 占位符,%s 字符串,%d或%i 数字

20、文件操作时:xreadlines和readlines的区别?

  • readlines返回一个list

  • xreadlines方法返回一个生成器

21,如何生成随机数?
import random

print(random.randint(0,9))

 

标签:11,面试题,python,字符串,url,Unicode,print
来源: https://www.cnblogs.com/xxks/p/15488671.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有