RenPy中文空间

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 75|回复: 5

[已解决] 怎么列出指定目录文件列表

[复制链接]
发表于 2019-5-2 11:55:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

x
想列出游戏指定目录下的文件,用于for出图片列表,一开始用 os.listdir 列出来发现出错,用 os.getcwd 一查它列出来的目录renpy目录,python只认得renpy。查了renpy帮助菜单找到文件读写里的 renpy.list_files ,却是列出game目录和归档目录所有文件,有什么办法只列出指定文件夹里的文件吗?
发表于 2019-5-4 11:18:44 | 显示全部楼层
renpy没有这功能,只能用python。
用“os.listdir”列出出错,是不是未加"import os"?

回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-6 21:06:59 | 显示全部楼层
BuErShen 发表于 2019-5-4 11:18
renpy没有这功能,只能用python。
用“os.listdir”列出出错,是不是未加"import os"?

os.listdir 列出来的目录出错是因为列的renpy的安装目录,我以为能列工程目录里,在控制台用os.getcwd查了下才发现它反馈的目录是renpy-xxx-sdk,是不是我没输出工程的原因,所以控制台用python它反馈回来的是renpy.exe所在目录。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-6 22:44:08 | 显示全部楼层
BuErShen 发表于 2019-5-4 11:18
renpy没有这功能,只能用python。
用“os.listdir”列出出错,是不是未加"import os"?

用 import sys 找到工程目录了,再用replace替换路径正斜杠,总算把指定目录的文件列表输出来了。
回复 支持 反对

使用道具 举报

发表于 2019-5-7 13:24:08 | 显示全部楼层
Eila 发表于 2019-5-6 22:44
用 import sys 找到工程目录了,再用replace替换路径正斜杠,总算把指定目录的文件列表输出来了 ...

不知能否看下实现代码?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-7 21:59:55 | 显示全部楼层
龙氏 发表于 2019-5-7 13:24
不知能否看下实现代码?

用 sys.path搜索模块,定位工程所在目录,得到目录路径后用replace将\\替换成/,方便renpy识别。
再用 os.path.exists 验证路径是否有效,避免目录不存在的时候出错,有效再执行for循环os.listdir返回目录和文件,用os.path.isfile确认文件,之后用add把os.path.join(photo_cwd, lists)当路径贴出图片,没学过python,刚接触renpy所以都是自己在python代码库边翻边写的,也不知道有其他什么更好的办法。

[RenPy] 纯文本查看 复制代码
python:
                                                    photo_cwd = eval(repr('%s/game/images/Character/%d/photo/' %(sys.path[0],role_id)).replace('\\', '/'))
                                                    
                                                if os.path.exists(photo_cwd):
                                                    for lists in os.listdir(photo_cwd):
                                                        $sub_path = os.path.join(photo_cwd, lists)
                                                        if os.path.isfile(sub_path):
                                                            add  sub_path



评分

参与人数 2硬币 +300 干货 +5 收起 理由
BuErShen + 300 + 2 版区有你更精彩(*^_^*)
龙氏 + 3 感谢分享!

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|RenPy中文空间 ( 苏ICP备17067825号 | 苏公网安备 32092302000068号 )

GMT+8, 2019-5-24 03:04 , Processed in 0.079845 second(s), 24 queries , File On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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