美文网首页
30个经典Python小例子测测你的基础知识(1-10)

30个经典Python小例子测测你的基础知识(1-10)

作者: 孤城暮雨丶 | 来源:发表于2020-12-03 14:06 被阅读0次

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

以下文章来源于腾讯云 作者:龙哥

1、冒泡排序

lis = [56,12,1,8,354,10,100,34,56,7,23,456,234,-58]

def sortport():
    for i in range(len(lis)-1):
        for j in range(len(lis)-1-i):
            if lis[j]>lis[j+1]:
                lis[j],lis[j+1] = lis[j+1],lis[j]
    return lis
if __name__ == '__main__':
    sortport()
    print(lis)

2、计算x的n次方

def power(x, n):
    s = 1
    while n > 0:
        n = n - 1
        s = s * x
    return s
调用方法:

print(power(2,4))

3、计算aa + bb + c*c + …

def calc(*numbers):
    sum=0
    for n in numbers:
        sum=sum+n*n
    return sum
print(calc(2,4,5))

4、计算阶乘 n!

#方法一
def fac():
    num = int(input("请输入一个数字:"))
    factorial = 1
    #查看数字是负数,0或者正数
    if num<0:
        print("抱歉,负数没有阶乘")
    elif num == 0:
        print("0的阶乘为1")
    else:
        for i in range(1,num+1):
            factorial = factorial*i
        print("%d的阶乘为%d"%(num,factorial))
if __name__ == '__main__':
    fac()

#方法二
def fac():
    num = int(input("请输入一个数字:"))
    #查看数字是负数,0或者正数
    if num<0:
        print("抱歉,负数没有阶乘")
    elif num == 0:
        print("0的阶乘为1")
    else:
        print("%d的阶乘为%d"%(num,factorial(num)))
def factorial(n):
    result = n
    for i in range(1,n):
        result=result*i
    return result

if __name__ == '__main__':
    fac()

#方法三
def fac():
    num = int(input("请输入一个数字:"))
    #查看数字是负数,0或者正数
    if num<0:
        print("抱歉,负数没有阶乘")
    elif num == 0:
        print("0的阶乘为1")
    else:
        print("%d的阶乘为%d"%(num,fact(num)))

def fact(n):
    if n == 1:
        return 1
    return n * fact(n - 1)

if __name__ == '__main__':
    fac()

5、列出当前目录下的所有文件和目录名

import os

for d in os.listdir('.'):
    print(d)
另外列表推导式代码:

[d for d in os.listdir('.')]

6、把一个list中所有的字符串变成小写:

L = ['Hello','World','IBM','Apple']

for s in L:
    s=s.lower()
    print(s)     #将list中每个字符串都变成小写,返回每个字符串
另外列表推导式代码:

L = ['Hello','World','IBM','Apple']
print([s.lower() for s in L])#整个list所有字符串都变成小写,返回一个list

7、输出某个路径下的所有文件和文件夹的路径

def print_dir():
  filepath = input("请输入一个路径:")
  if filepath == "":
    print("请输入正确的路径")
  else:
    for i in os.listdir(filepath):       #获取目录中的文件及子目录列表
      print(os.path.join(filepath,i))  #把路径组合起来

print(print_dir())

8、输出某个路径及其子目录下的所有文件路径

def show_dir(filepath):
  for i in os.listdir(filepath):
    path = (os.path.join(filepath, i))
    print(path)
    if os.path.isdir(path):      #isdir()判断是否是目录
      show_dir(path)             #如果是目录,使用递归方法

filepath = "C:\Program Files\Internet Explorer"
show_dir(filepath)

9、输出某个路径及其子目录下所有以.html为后缀的文件

def print_dir(filepath):
  for i in os.listdir(filepath):
    path = os.path.join(filepath, i)
    if os.path.isdir(path):
      print_dir(path)
    if path.endswith(".html"):
      print(path)

filepath = "E:\PycharmProjects"
print_dir(filepath)

10、把原字典的键值对颠倒并生产新的字典

dict1 = {"A":"a","B":"b","C":"c"}
dict2 = {y:x for x,y in dict1.items()}
print(dict2)
#输出结果为{'a': 'A', 'b': 'B', 'c': 'C'}

相关文章

网友评论

      本文标题:30个经典Python小例子测测你的基础知识(1-10)

      本文链接:https://www.haomeiwen.com/subject/xeymwktx.html