在python中更改目录,相对路径

在python中更改目录,相对路径,python,Python,我在一些帖子和文档中读到,您可以使用os.path.expanduser(~/.PATHNAME)在python中更改相对路径。目前我正在努力使用它。当我使用它时,我会在目标路径的上方找到一个目录 from django.shortcuts import render import os import subprocess def index(request): os.path.expanduser('~/.usernames') files = [] for file in os

我在一些帖子和文档中读到,您可以使用
os.path.expanduser(~/.PATHNAME)
在python中更改相对路径。目前我正在努力使用它。当我使用它时,我会在目标路径的上方找到一个目录

from django.shortcuts import render
import os
import subprocess

def index(request):
  os.path.expanduser('~/.usernames')
  files = []
  for file in os.listdir("."):
    files.append(file)
  return render(request, 'sslcert/index.html', dict(files = files))

看起来您缺少了一个步骤,并且您打算进入目录,如下所示:

os.chdir(os.path.expanduser('~/.usernames'))

否则,您的os.path.expanduser行只是生成了一个没有任何用途的路径。

哪个打印语句给出了错误的路径?是os.path.expanduser吗?或者os.listdir(“.”),两者都有!我真的很困惑。当我使用os.chdir和绝对路径(我想去掉它)时,它成功了。这就是它应该做的。你想做什么?好的,我的目标是从某个位置更改目录。python脚本所在的位置。我想我可以这样更改目录:“LOCATION\u WHERE\u I\u AT”(我的python脚本所在的位置)(->更改为子目录-->)“usernames”。我想我对os.path.expanduser的理解是错误的:(sorrySo你想获得目录中的文件列表?它总是一样的,还是取决于运行脚本的人的用户名?如果总是一样的,你可能应该硬编码。如果它是相对于用户的,那么你可能需要os.path.expanduser。你得到了吗^^我可能也在我的问题中写了这一点..不是吗“我不知道这很重要。我想获取此目录中的文件列表!aa及其与用户的关系,因此,如果目录为/home/myusername/directory,您可以使用
os.listdir(os.path.expanduser('~/directory'))