非常抱歉理解错误。以下是修改后的代码,满足你的需求:
- import os
- import sys
- def search_files(directory, keyword):
- files = [f for f in os.listdir(directory) if f.endswith(".py")]
- found = False
- for file in files:
- file_path = os.path.join(directory, file)
- with open(file_path, "r") as f:
- content = f.read()
- if keyword in content:
- print(f"文件 {file_path} 包含 {keyword} 字符串")
- found = True
- if not found:
- print(f"该目录下没有文件包含 {keyword} 字符串")
- # 使用示例
- if len(sys.argv) < 3:
- print("请提供目录路径和关键字参数")
- else:
- directory = sys.argv[1]
- keyword = sys.argv[2]
- search_files(directory, keyword)
复制代码
你需要在命令行中执行类似以下形式的指令:
- python example.py 目录路径 关键字
复制代码
其中,`目录路径`为你要搜索的目录的路径,`关键字`为你要搜索的字符串。
这段代码会遍历指定目录下的所有.py文件,打开并读取其内容,然后判断是否包含指定的关键字。如果找到了包含关键字的文件,则输出文件路径和关键字字符串;否则,输出指定目录下没有文件包含关键字字符串的信息。
以上回复来自 -- ChatGPT(FishC官方接口),如未能正确解答您的问题,请继续追问。