ICode9

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

Python题库(100例)第一天

2021-02-19 10:30:47  阅读:579  来源: 互联网

标签:formatList dict1 Python orgList python 线程 print 题库 100


100题Python的题目是好久之前找到的,由于比较忙没有进行完善。准备用十天的时间刷完这100道题目。每刷一道题进行总结,反思和总结知识点,然后再巩固薄弱的知识点。

先干两杯鸡汤:

Nothing impossible !!!

Repetition is the mother of learning !!!

1、一行代码实现1—100之和


"""1到100求和"""
n=100
i=1
sum1=0
while i <= 100:
    sum1 +=i
    i += 1
print("1..到100之和为:%d" %sum1)
print("1..到100之和为: {0}".format(sum1))


"""拓展1、 采用输入的方式求和,求任意项"""
def sum(n):
    sum = 0
    for i in range(1,n+1):
        sum += i
    return sum
num=int(input("请输入项数 \n"))
print("%d项数的和为%d" %(num, sum(num)))

"""拓展2、 求1到100的奇偶数和"""
k = 100
sumj = 0
sumo = 0
for i in range(1, k+1):
    if i % 2 == 0:
        sumj += i
    else:
        sumo += i
print("1...100之间的奇数之和为: {0} ,偶数之和为:{1}".format(sumj, sumo))
print("1...100之间的奇数之和为: %d ,偶数之和为: %d" %(sumj, sumo))

"""拓展3、 求1到100的奇数平方和,偶数平方和"""

j = 100
sumj = 0
sumo = 0
for i in range(1, k+1):
    if i % 2 == 0:
        sumj += i*i
    else:
        sumo += i*i
print("1...100之间的奇数之和为: {0} ,偶数之和为:{1}".format(sumj, sumo))
print("1...100之间的奇数之和为: %d ,偶数之和为: %d" %(sumj, sumo))

薄弱知识点1:print 函数。

2、如何在一个函数内部修改全局变量

k = 1
l = 100
def fun():
    global k,l
    k = 2
    l = 8
fun()
print("k在函数内修全局修改之和的值为 %d" %k)
print("l在函数内修全局修改之和的值为 %d" %l)

3、列出5个python标准库

requests  描述:网络请求库,提供多种网络请求方法并可定义复杂的发送信息
urllib    描述:Python自带的库,简单的读取特定URL并获得返回的信息
scapy     描述:分布式爬虫框架,可用于模拟用户发送、侦听和解析并伪装网络报文,常用于大型网络数据爬取
pymysql   描述:MySQL连接库,支持Python3
HappyBase 描述:HBase连接库

4、字典如何删除键和合并两个字典

dict1 = {'name': 'xiaoming', 'likes': 123, 'url': 'www.xiaoming.com'}
del dict1["name"]
print(dict1)
dict1["name"]="小明"
print(dict1)
print("dict1[name]: ", dict1["name"])
dict2 = {'name1': 'believer', 'likes1': 123456, 'url2': 'www.believer.com'}

"""合并方法 1 """
dict3 = dict1.copy()
dict3.update(dict2)
print(dict3)

print("分割线++++++++++++++++++++++++++++++++++++++++++++++++++")

"""合并方法 2 """
dicMerged = dict(dict1, **dict2)
print(dicMerged)

5、谈下python的GIL

  • GIL 是python的全局解释器锁,同一进程中假如有多个线程运行,一个线程在运行python程序的时候会霸占python解释器(加了一把锁即GIL),使该进程内的其他线程无法运行,等该线程运行完后其他线程才能运行。如果线程运行过程中遇到耗时操作,则解释器锁解开,使其他线程运行。所以在多线程中,线程的运行仍是有先后顺序的,并不是同时进行。
  • 多进程中因为每个进程都能被系统分配资源,相当于每个进程有了一个python解释器,所以多进程可以实现多个进程的同时运行,缺点是进程系统资源开销大。

6、python实现列表去重的方法

"""1. 使用set的特型,python的set和其他语言类似, 是一个无序不重复元素集"""
orgList = [1, 0, 3, 7, 7, 5]
#list()方法是把字符串str或元组转成数组
formatList = list(set(orgList))
print (formatList)

"""2. 使用keys()方法"""
orgList = [1, 0, 3, 7, 7, 5]
#list()方法是把字符串str或元组转成数组
formatList = list({}.fromkeys(orgList).keys())
print(formatList)

"""3. 循环遍历法"""
orgList = [1, 0, 3, 7, 7, 5]
formatList = []
for id in orgList:
 if id not in formatList:
  formatList.append(id)
print(formatList)

"""4. 按照索引再次排序"""
orgList = [1, 0, 3, 7, 7, 5]
formatList = list(set(orgList))
formatList.sort(key=orgList.index)
print(formatList)

7、fun(args,**kwargs)中的args,**kwargs什么意思?

当不定数量的参数传递给一个函数时可以使用*args与**kwargs

  • *args是用来发送一个键值对可变数量的参数列表给一个函数,意思就是没有key值。
  • **kwargs将不定长度的键值对,作为参数传递给一个函数。意思就是有key值。

8、python2和python3的range(100)的区别

  • python2返回列表
  • python3返回迭代器,节约内存

9、一句话解释什么样的语言能够用装饰器?

  • 利用闭包的基本原理,对一个目标函数进行装饰,即在执行一个目标函数之前或之后执行一些特定的事情

10、python内建数据类型有哪些?

  • 整型–int
  • 布尔型–bool
  • 字符串–str
  • 列表–list
  • 元组–tuple
  • 字典–dic

标签:formatList,dict1,Python,orgList,python,线程,print,题库,100
来源: https://blog.csdn.net/weixin_37791303/article/details/108191399

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

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

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

ICode9版权所有