Python的基础算法题

1.日期计算器

2.翻转单词顺序(剑指offer 50)

3.旋转字符串(力扣796)

4.文件查找工具

1.日期计算器

方法1:

先构造datetime变量
import datetime
date1=datetime.datetime(year=2012,month=2,day=14)
data2=datetime.datetime(year=2016,month=2,day=3)
print(data2-date1)

方法2:

from datetime import datetime

date1=datetime(year=2012,month=2,day=14)
date2=datetime(year=2016,month=2,day=3)
print(date2-date1)

Python的基础算法题
方法3:
import datetime as dt
date1=dt.datetime(year=2012,month=2,day=14)
data2=dt.datetime(year=2016,month=2,day=3)
print(data2-date1)

2.翻转单词顺序(剑指offer 50)

在Python的思路是:
1.针对上述的字符串,使用空格进行切分,字符串split方法,可以指定分隔符,把字符串分成多个部分,放到一个list里面。
2.针对刚才的切分的结果列表,进行逆序。
3.再把逆序后的列表,组合起来,join

 def reverseWords(s:str):
     tokens=s.split(' ')
     tokens.reverse()
     return ' '.join(tokens)

 print(reverseWords("I an a student."))

3.旋转字符串(力扣796)

输入:s=”abcde”
把最左侧的字符,放到最右侧去变为 “bcdea” “cdeab””deabc” “eabcd”

def rotateString(s,goal):
    if len(s)!=len(goal):
        return False
    #in操作判断某个字符串是不是另外一个字符串的子串
    return goal in (s+s)

print(rotateString("abcde","cdeab"))
print(rotateString("abcde","edcba"))

Python的基础算法题

4.文件查找工具

for dirpath,dirnames,filenames in as.walk(inputPath):
dirpath 遍历到当前位置,对应路径是啥
dirnames 当前目录下,都有哪些目录名,是一个列表,可以包含多个目录名
filenames 当前目录下,都有哪些文件名,是一个列表,可以包含多个文件名

#实现文件查找工具
#输入要查找的路径,输入要搜索的文件名(一部分)
#自动的在指定的路径中查找
import os
inputPath=input("请输入要搜索的路径")
pattern=input('请输入要搜索的关键词')

for dirpath,dirnames,filenames in os.walk(inputPath):
    # print('------------------------------------')
    # print(f'dirpath={dirpath}')
    # print('dirnames:')
    # for name in dirnames:
    #     print(name)
    # print('filenames:')
    # for name in filenames:
    #     print(name)
    for f in filenames:
        if pattern in f:
            print(f'{dirpath}/{f}')

Original: https://blog.csdn.net/wxx200008/article/details/127802479
Author: 妖风吹不倒小熊栽的树
Title: Python的基础算法题

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/660791/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球