1.找出10000以内能被5或6整除,但不能被两者同时整除的数(函数)
def find_numbers():
result = []
for i in range(1, 10001):
if (i % 5 == 0 or i % 6 == 0) and not (i % 5 == 0 and i % 6 == 0):
result.append(i)
return result
print(find_numbers())
2.写一个方法,计算列表所有偶数下标元素的和(注意返回值)
def sum_even_index_elements(lst):
return sum(lst[::2])
# 示例
lst = [1, 2, 3, 4, 5, 6]
result = sum_even_index_elements(lst)
print(result) # 输出:9 (1 + 3 + 5)
3.根据完整的路径从路径中分离文件路径、文件名及扩展名
import os
def split_file_info(file_path):
# 获取文件路径和文件名
file_dir, file_name = os.path.split(file_path)
# 获取文件名和扩展名
file_base_name, file_ext = os.path.splitext(file_name)
return file_dir, file_base_name, file_ext
file_path = "/example/path/to/your/file.txt"
file_dir, file_base_name, file_ext = split_file_info(file_path)
print("文件路径:", file_dir)
print("文件名:", file_base_name)
print("扩展名:", file_ext)
4.根据标点符号对字符串进行分行
s = '1.121212..12.1'
print(*s.split('.'),sep='\n')
5.去掉字符串数组中每个字符串的空格
s='1 1 2 11 1 1 1 11 1 1'
d=''
for i in s.split():
d=d+i
print(d)
6.两个学员输入各自最喜欢的游戏名称,判断是否一致,如 果相等,则输出你们俩喜欢相同的游戏;如果不相同,则输 出你们俩喜欢不相同的游戏。
# 获取两个学员输入的游戏名称
game1 = input("请输入你最喜欢的游戏名称:")
game2 = input("请输入你最喜欢的游戏名称:")
# 判断两个游戏名称是否相同
if game1 == game2:
print("你们俩喜欢相同的游戏")
else:
print("你们俩喜欢不相同的游戏")
7.上题中两位同学输入 lol和 LOL代表同一游戏,怎么办?
# 获取两个学员输入的游戏名称,并转换为小写
game1 = input("请输入你最喜欢的游戏名称:").lower()
game2 = input("请输入你最喜欢的游戏名称:").lower()
# 判断两个游戏名称是否相同
if game1 == game2:
print("你们俩喜欢相同的游戏")
else:
print("你们俩喜欢不相同的游戏")
8.让用户输入一个日期格式如“2008/08/08”,将 输入的日 期格式转换为“2008年-8月-8日”。
# 获取用户输入的日期
date = input("请输入一个日期(格式如2008/08/08):")
# 将日期按照"/"分割成年、月、日三部分
year, month, day = date.split("/")
# 将这三部分重新组合成新的格式
new_date = year + "年-" + month + "月-" + day + "日"
print(new_date)
9.接收用户输入的字符串,将其中的字符进行排序(升 序),并以逆序的顺序输出,“cabed”→"abcde"→“edcba"
# 获取用户输入的字符串
s = input("请输入一个字符串:")
# 将字符串中的字符进行排序
sorted_s = sorted(s)
# 将排序后的字符列表连接成一个新的字符串
new_s = ''.join(sorted_s)
print(new_s)
10.接收用户输入的一句英文,将其中的单词以反序输 出,“hello c java python”→“python java c hello”。
# 获取用户输入的句子
sentence = input("请输入一句英文:")
# 将句子按照空格分割成单词列表
words = sentence.split()
# 将单词列表反转
words.reverse()
# 将反转后的单词列表连接成一个新的句子
new_sentence = ' '.join(words)
print(new_sentence)
11.从请求地址中提取出用户名和域名 http://www.163.com?userName=admin&pwd=123456
from urllib.parse import urlsplit, parse_qs
# 请求地址
url = "http://www.163.com?userName=admin&pwd=123456"
# 使用urlsplit()方法将请求地址分割成各个部分
result = urlsplit(url)
# 使用parse_qs()方法将查询字符串解析成一个字典
query_dict = parse_qs(result.query)
# 从字典中获取用户名和域名
username = query_dict['userName'][0]
domain = result.netloc
print("用户名:", username)
print("域名:", domain)
12.有个字符串数组,存储了10个书名,书名有长有短,现 在将他们统一处理,若书名长度大于10,则截取长度8的 子串并且最后添加“...”,加一个竖线后输出作者的名字。
# 假设我们有一个字符串数组books和一个作者名字author
books = ["The Great Gatsby", "To Kill a Mockingbird", "1984", "The Catcher in the Rye", "Moby-Dick", "Crime and Punishment", "War and Peace", "Pride and Prejudice", "The Odyssey", "Ulysses"]
author = "James Joyce"
for book in books:
if len(book) > 10:
book = book[:8] + "..."
print(book + " | " + author)
13.让用户输入一句话,找出所有"呵"的位置。
# 获取用户输入的句子
sentence = input("请输入一句话:")
# 初始化开始位置和"呵"的位置列表
start = 0
positions = []
# 在循环中使用find()方法查找"呵"的位置
while True:
position = sentence.find("呵", start)
if position == -1:
break
positions.append(position)
start = position + 1
print("所有'呵'的位置:", positions)
14.让用户输入一句话,判断这句话中有没有邪恶,如果有邪
恶就替换成这种形式然后输出,如:“老牛很邪恶”,输出后变
成”老牛很**”
# 获取用户输入的句子
sentence = input("请输入一句话:")
# 使用replace()方法将"邪恶"替换成"**"
new_sentence = sentence.replace("邪恶", "**")
print(new_sentence)
15.判断一个字符是否是回文字符串 "1234567654321" "上海自来水来自海上"
def is_palindrome(s):
return s == s[::-1]
print(is_palindrome("1234567654321")) # False
print(is_palindrome("上海自来水来自海上")) # True
16.过滤某个文件夹下的所有"xx.py"python文件
import os
def filter_files(folder):
files = os.listdir(folder)
return [f for f in files if f.endswith('.py')]
print(filter_files('/path/to/your/folder'))