学习Python已经有四个月了,基础知识学完就开始刷题了,之前没有记录,从今天开始每天记录一下,看看自己的成长轨迹,也可以及时复盘学习中的问题。岁月静好,学习到老!
#请按alist中元素的age由大到小排序
alist = [{'name':'a','age':20},{'name':'b','age':30},{'name':'c','age':25}]
print(sorted(alist,key=lambda x:x['age'],reverse=True))
#下面代码的输出结果将是什么?
list = ['a','b','c','d','e']
print(list[10:])
#list[10]会报错,切片不会报错只显示为[]
#286、.写一个列表生成式,产生一个公差为11的等差数列
print([i*11 for i in range(1,10)])
#给定两个列表,怎么找出他们相同的元素和不同的元素
#集合是求交集和并集的最优方法
s1 = [1,3,5,7]
s2 = [2,3,4,5]
ulst = set(s1)&set(s2)
print(ulst)
clst = set(s1)^set(s2)
print(clst)
#python中内置的数据结构有几种?
#整形,复数,字符串布尔型,列表,元组,字典,集合
#python如何实现单例模式?请写出两种实现方式?
#反转一个整数,例如-123 --> -321
#算法:1.判断是否是整数,是继续,不是返回-1
#2.判断第一位是否是-,如果不是,直接反转所有数字,如果是-,[1:]位直接反转
class Solution():
def ReverseInt(self,x):
if -10< int(x) <10:
return x
if x[0] != '-':
reverse_int = int(x[::-1])
else:
reverse_int = '-' + str(int(x[1:][::-1]))
return reverse_int
s = Solution()
print(s.ReverseInt('-20'))
#设计实现遍历目录与子目录,抓取.pyc文件。
#算法:1、os.walk;2、os.listdir(sPath)
def find_file(sPath,spec):
import os
for root,dirs,files in os.walk(sPath,spec):#files必须放在第三个位置才会表示file,放在第二个位置只是代表dir,默认位置和功能不可变
for file in files:
file_path = os.path.join(root,file)
#if file_path[-3:] == '.py':
#print(file_path)
if os.path.splitext(file_path)[1] == spec:
print(file_path)
print(find_file(r'D:\BaiduNetdiskDownload\gloryroad','.py'))
#一行代码实现1-100之和
print(sum(range(1,101))) #省略x for x in 写法
#294、遍历列表时删除元素的正确做法
s = [1,2,3,4,5]
l = s[:]
for i in l:
if i<3:
s.remove(i)
print(s)
print(list(filter(lambda x:x>2,s)))