鱼C论坛

 找回密码
 立即注册
查看: 1619|回复: 8

[已解决]关于os系统文件路径-萌新问题

[复制链接]
发表于 2021-7-27 23:57:05 | 显示全部楼层 |阅读模式
5鱼币
本人是刚刚学习python不久,看小甲鱼的课程到28讲-文件:因为你懂,所以永恒

因为使用的是苹果电脑, 所以想问我文件创建路径该怎么写

像windows 你可以写   open('E:/text.txt, rt')
因为我用的是os系统,没有e盘,所以不知道要怎么写
想求助大佬们!!!!!



谢谢!!!!!!!!
最佳答案
2021-7-27 23:57:06
本帖最后由 z5560636 于 2021-7-28 09:39 编辑

  
教你一招,mac 命令行下面进入到你要打开的任意文件路径下,然后  输出    pwd
系统会把绝对路径输出给你,这个时候你只需要把:
open('E:/text.txt, rt')     括号里面的路径换成  系统输出给你的open("系统输出的绝对路径" + 'text.txt, rt') 就行了。

此功能用多了后,当你遇到文件路径的时候,不在是一脸的懵逼。

最佳答案

查看完整内容

教你一招,mac 命令行下面进入到你要打开的任意文件路径下,然后 输出 pwd 系统会把绝对路径输出给你,这个时候你只需要把: open('E:/text.txt, rt') 括号里面的路径换成 系统输出给你的open("系统输出的绝对路径" + 'text.txt, rt') 就行了。 此功能用多了后,当你遇到文件路径的时候,不在是一脸的懵逼。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-27 23:57:06 | 显示全部楼层    本楼为最佳答案   
本帖最后由 z5560636 于 2021-7-28 09:39 编辑

  
教你一招,mac 命令行下面进入到你要打开的任意文件路径下,然后  输出    pwd
系统会把绝对路径输出给你,这个时候你只需要把:
open('E:/text.txt, rt')     括号里面的路径换成  系统输出给你的open("系统输出的绝对路径" + 'text.txt, rt') 就行了。

此功能用多了后,当你遇到文件路径的时候,不在是一脸的懵逼。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-28 00:32:51 | 显示全部楼层
open('~/test.txt')试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-28 00:45:05 | 显示全部楼层
使用 pathlib模块
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-7-28 01:44:38 | 显示全部楼层

能说的跟具体一点吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-7-28 01:56:21 | 显示全部楼层
聂嘉辉 发表于 2021-7-28 00:32
open('~/test.txt')试试

不行, 报错

Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    open('~/test.txt')
FileNotFoundError: [Errno 2] No such file or directory: '~/test.txt'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-7-28 09:21:47 | 显示全部楼层
本帖最后由 kogawananari 于 2021-7-28 09:23 编辑
marshao 发表于 2021-7-28 01:44
能说的跟具体一点吗

import pathlib

#/分割路径的系统  mac属于是
p1 = pathlib.PurePosixPath('/etc','httpd')
p2 = pathlib.PurePosixPath('conf','httpd.conf')
print(p1 / p2)# /etc/httpd/conf/httpd.conf

#\\分割路径的系统  win属于是
p3 = pathlib.PureWindowsPath('C:/Users/Administrator/Desktop')
p4 = pathlib.PureWindowsPath('www/test.c')
print(p3 / p4)# C:\Users\Administrator\Desktop\www\test.c

f = open(p3 / p4, "r", encoding='utf-8')
data=f.read()
print(data) #include<stdio.h>...
f.close()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-7-28 15:59:45 | 显示全部楼层

谢谢大佬,对我来说你可能解答的太难了
我这水平还不行,我已经知道怎么弄了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-7-28 16:08:36 | 显示全部楼层
本帖最后由 marshao 于 2021-7-31 22:21 编辑

用苹果自带的 terminal 输入pwd可以得到路径, 也可以直接拖拽文件进terminal也可以得到文件的路径
然后回到python 就可以自己尝试了



或者
import os
os.getwd()

也可以获得路径
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-13 22:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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