python(7)

"""
1.递归访问目录: 且目录中嵌套目录,有层次的列出给定目录中所有的文件和文件夹
# 切换目录: os.chdir(path)
# 列出当前目录中所有的文件和文件夹 os.listdir(path), path: 绝对路径
# 判断是否是文件: os.path.isfile(path)
# 判断是否是目录: os.path.isdir(path)
# 拼接路径: os.path.join(path1, path2, path3....)
2.定义一个嵌套函数,
  外层函数打印this is outing function
  内层函数功能:打印This is inner function
3.定义一个递归函数:打印斐波那契数列
  F[n]=F[n-1]+F[n-2](n>=2,F[0]=0,F[1]=1)
4.对列表进行排序: list_data = ["grape", "peach", "berry", "pineapple", "apple", "strayberry", "watermelon"]
  排序规则:按照最后一个字符进行排序,如果最后一个字符相等,按照第一个字符排序
5.利用map函数: 计算三个列表,相同位置元素之和
       list1 = [1, 2, 3]
    list2 = [4, 5, 6]
    list3 = [7, 8, 9]
6.利用filter函数过滤列表中所有带a的字符串
      list_data = ["grape", "what", "which", "you", "friend", "am"]
7.利用reduce计算1 + 2 + 3...+ 100之和

"""
# 1.递归访问目录: 且目录中嵌套目录,有层次的列出给定目录中所有的文件和文件夹
# # 切换目录: os.chdir(path)
# # 列出当前目录中所有的文件和文件夹 os.listdir(path), path: 绝对路径
# # 判断是否是文件: os.path.isfile(path)
# # 判断是否是目录: os.path.isdir(path)
# # 拼接路径: os.path.join(path1, path2, path3....)
import os
os.chdir("F:\py progect")                   # 切换目录
print(os.listdir())
print(os.path.isdir("F:\py progect"))       # 判断是否是目录
print(os.path.isfile("F:\py progect\1"))    # 判断是否是文件
print(os.path.split("D:\\test\\test2"))     # 合并两个路径 d: test => d:\test
# 2.定义一个嵌套函数,
#   外层函数打印this is outing function
#   内层函数功能:打印This is inner function
def outer():
     print("this is outing function")
     def inner():
         print("This is inner function")
     return inner()
print(outer())

# 3.定义一个递归函数:打印斐波那契数列
#   F[n]=F[n-1]+F[n-2](n>=2,F[0]=0,F[1]=1)
def print_feibo(n):
    if n <=1:
        return n
    else:
        return (print_feibo(n-1)+print_feibo(n-2))
"""
num = input("请输入要打印的项数")
num= int(num)
if num < 0:
    print("请输入大于0的数")
else:
    for i in range(num):
        print(print_feibo(i),end=" ")
"""
# 4.对列表进行排序: list_data = ["grape", "peach", "berry", "pineapple", "apple", "strayberry", "watermelon"]
#   排序规则:按照最后一个字符进行排序,如果最后一个字符相等,按照第一个字符排序

list_data = ["grape", "peach", "berry", "pineapple", "apple", "strayberry", "watermelon"]
list_data.sort(key= lambda x: (x[-1], x[0]))
print(list_data)
# 5.利用map函数: 计算三个列表,相同位置元素之和
#     list1 = [1, 2, 3]
#     list2 = [4, 5, 6]
#     list3 = [7, 8, 9]
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = [7, 8, 9]
map_obj = map(lambda x, y, z : x+y+z, list1, list2, list3)
print(list(map_obj))
# 6.利用filter函数过滤列表中所有带a的字符串
#       list_data = ["grape", "what", "which", "you", "friend", "am"]
list_data = ["grape", "what", "which", "you", "friend", "am"]


# 7.利用reduce计算1 + 2 + 3...+ 100之和
from functools import reduce
data = reduce(lambda x, y: x+y, list(range(1, 101)))
print(data)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值