测试开发python面试_测试开发面试基础(python)

本文介绍了Python编程中列表推导式的使用,包括生成1-100的列表和奇数列表。同时,讨论了如何去除列表中的重复元素,提供了三种不同的解决方案。此外,对比了列表、元组、迭代器和生成器的区别,并解释了Python的全局解释器锁(GIL)对多线程的影响。最后,探讨了Python如何利用多进程实现并行计算以利用多核CPU的优势。
摘要由CSDN通过智能技术生成

#1使用列表推导式输出1-100的列表

# print([i for i in range(100)])

#

# #2使用列表推导式输出1-100内的奇数

# print([i for i in range(100) if i%2==1])

# print([i for i in range(1,100,2)])

# print([i for i in range(1,100)][::2])

#3过滤列表中重复的数

a=[2,2,3,1,2,3,4,5,1,2,3,1,2,31,23,12,31,12,2,3,12,3,12,]

#方案1

print(list(set(a)))

#方案2

b=[]

for i in a:

if i not in b:b.append(i)

#方案3,定义计数器

counter={}

for i  in a:

if i in counter:

counter[i]+=1

else:

counter[i]=1

print(counter)

print(list(counter.keys()))

#4把重复多次的元素取出来 说明重复非次数

#同上

#5list(列表)和元组的区别

#6迭代器和生成器的区别

#迭代器 可以迭代的对象 列表 字典

#生成器 generator 不保存完整的数据,需要数据时生成数据

#7.如何将迭代器转化为生成器?

print(x for x in range(10))

#8.进程和线程的区别

#线程是程序运行的最小单位

#进程的操作系统管理的最小单元 ,一个进程可以包括很多线程

#9.说一下python的线程的特点

#一遍编程语言 利用的是cpu的多核心  一个线程一个核心 可以最大化效率

#python的多线程有GLI全局锁的,不能真正以上多核

#10.python如何使用多核心?

#使用多进程实现,进行开销相对较大(内存  IO)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值