首页 > 解决方案 > 我需要一个由调用组成的列表,例如 os.system('ls' + path)

问题描述

我真的需要一个系统调用列表,例如 os.system('ls ' + input) 我当然尝试过谷歌搜索,但没有找到太多。

还尝试了不同的编码方式,但我无法让它工作。

import os

user_input = input("Specify directory: ")
directory = os.system('ls ' + str(user_input))
------------------------------------------------------------------
# I need a list made out of the directory variable.
# Also note that subprocessing doesn't work that well as it doesn't accept # bash special chars like '~/', whereas os.system() accepts that.
# What os.system(), subprocess.call() return is just a normal output and I # cannot get to list that.
# Also I have gotten my program to work with os.listdir() but os.listdir() # doesn't accept special chars like '~/'.

显然,如果有人能帮我解决这个问题,我将不胜感激。

谢谢。

标签: pythonpython-3.xcommand

解决方案


您可以~在输入中处理。而且...也是。

os.listdir(os.path.abspath(os.path.expanduser(user_input)))

参考:https ://docs.python.org/2/library/os.path.html#os.path.expanduser

https://docs.python.org/2/library/os.path.html#os.path.abspath


推荐阅读