鱼C论坛

 找回密码
 立即注册
查看: 2718|回复: 7

请教下这个问题出在哪

[复制链接]
发表于 2023-12-1 16:32:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我想在一个目录下建立一个“月份”的文件夹,然后想根据选择是几月份,再在这个文件夹下建立每天的文件夹,我写了一点点
但现在发现两个问题:
1】、提示建立成功,但是在“车作业”的目录下看不到这个文件夹
2】、用正则表达式,我提取不到“folder_name”这个字符串里面的数字。
麻烦大神帮我解答下,感谢!
  1. import os
  2. import re

  3. path= "F:\常用工作文档\车作业"

  4. folder_name = input("你想要做几月份的文件夹:")
  5. new_path = os.path.join(path, folder_name)

  6. try:
  7.     os.mkdir(folder_name)
  8.     print(f'成功创建了{folder_name}的文件夹')
  9. except FileExistsError as e:
  10.     print('文件夹已经存在!', str(e))

  11. month_num = r'd+'
  12. result = re.findall(month_num, folder_name)
  13. print(result)
复制代码

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-12-4 07:58:24 | 显示全部楼层
FishC_GPT 发表于 2023-12-1 16:33
问题出在两个地方:

1. 在创建文件夹的时候,应该使用`new_path`而不是`folder_name`作为参数。修改代码为 ...

怪不得,我说我怎么建立的文件夹没有,原来是路径问题,谢谢!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-12-4 08:45:41 | 显示全部楼层
我想给他优化下,但是又出问题了,提示:“    print(f'成功创建了{folder_name}的文件夹')
SyntaxError: expected 'except' or 'finally' block”

  1. import os
  2. import re

  3. path= "F:/常用工作文档/车作业"

  4. folder_name = input("你想要做几月份的文件夹:")
  5. new_path = os.path.join(path, folder_name)

  6. month_num = r'\d+'
  7. result = re.findall(month_num, folder_name)
  8. print(result[0])

  9. try:
  10.     # 判断有月份来建立文件夹数量
  11.     if result == 1 or result == 3 or result == 5 or result == 7 or result == 8 or result == 10 or result == 12:
  12.         Month_number = 32
  13.     elif result == 4 or result == 6 or result == 9 or result == 11:
  14.         Month_number = 31
  15.     elif result == 2:
  16.         Month_number = 29
  17.     elif result <= 0 or result > 12:
  18.         print('您输入的月份有错!')
  19.     elif FileExistsError:
  20.         print('文件夹已经存在!')
  21.     else:
  22.         os.mkdir(new_path)
  23.         print(f'成功创建了{folder_name}的文件夹')
复制代码


小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-12-4 09:18:26 | 显示全部楼层
搞定了,改错的过程中也学习了很多只是,真的,有时候真的是思路大于基础知识!
  1. import os
  2. import re

  3. path= "F:/常用工作文档/车作业"

  4. folder_name = input("你想要做几月份的文件夹:")
  5. new_path = os.path.join(path, folder_name)

  6. month_num = r'\d+'
  7. result = re.findall(month_num, folder_name)
  8. print(type(result[0]))

  9. os.mkdir(new_path)
  10. print(f'成功创建了{folder_name}的文件夹')

  11. new_path2 = "F://常用工作文档/车作业/"+ folder_name + "/"
  12. #把得出的月份转化成整数
  13. new_result = int(result[0])

  14. # 判断有月份来建立文件夹数量
  15. if new_result == 1 or new_result == 3 or new_result == 5 or new_result == 7 or new_result == 8 or new_result == 10 or new_result == 12:
  16.     Month_number = 32
  17. elif new_result == 4 or new_result == 6 or new_result == 9 or new_result == 11:
  18.     Month_number = 31
  19. elif new_result == 2:
  20.     Month_number = 29
  21. elif new_result < 0 or new_result > 12:
  22.     print('您输入的月份有错!')



  23. for i in range(1,int(Month_number)):
  24.     isexits = os.path.exists(new_path2 +str(i))
  25.     if not isexits:
  26.         os.mkdir(new_path2 + str(i))
  27.         print("%s目录创建成功"%i)
  28.     else:
  29.         print("目录已经存在")
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-10-2 02:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表