1318
Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.
Làm cách nào để có được đường dẫn thư mục của tệp hiện tại? Tôi đã thử:
>>> os.path.abspath[__file__]
'C:\\python27\\test.py'
Nhưng tôi muốn:
'C:\\python27\\'
Mateen Ulhaq
22.3K16 Huy hiệu vàng86 Huy hiệu bạc127 Huy hiệu đồng16 gold badges86 silver badges127 bronze badges
Hỏi ngày 7 tháng 8 năm 2010 lúc 12:17Aug 7, 2010 at 12:17
3
Biến đặc biệt
'C:\\python27\\'
7 chứa đường dẫn đến tệp hiện tại. Từ đó chúng ta có thể nhận thư mục bằng mô -đun 'C:\\python27\\'
8 hoặc 'C:\\python27\\'
9.Python 3
Đối với thư mục của tập lệnh đang được chạy:
import pathlib
pathlib.Path[__file__].parent.resolve[]
Đối với thư mục làm việc hiện tại:
import pathlib
pathlib.Path[].resolve[]
Python 2 và 3
Đối với thư mục của tập lệnh đang được chạy:
import os
os.path.dirname[os.path.abspath[__file__]]
Đối với thư mục làm việc hiện tại:
import os
os.path.abspath[os.getcwd[]]
Python 2 và 3
Nếu bạn có nghĩa là thư mục làm việc hiện tại:
Lưu ý rằng trước và sau import pathlib
pathlib.Path[__file__].parent.resolve[]
0 là hai dấu gạch dưới, không chỉ một.
import pathlib
pathlib.Path[__file__].parent.resolve[]
- Cũng lưu ý rằng nếu bạn đang chạy tương tác hoặc có mã được tải từ một cái gì đó không phải là tệp [ví dụ: cơ sở dữ liệu hoặc tài nguyên trực tuyến],
7 có thể không được đặt ra vì không có khái niệm về "tệp hiện tại". Câu trả lời trên giả định kịch bản phổ biến nhất của việc chạy tập lệnh Python có trong một tệp.'C:\\python27\\'
- Người giới thiệu
- Pathlib trong tài liệu Python.
- Os.Path - Python 2.7, Os.Path - Python 3
Mateen Ulhaq
22.3K16 Huy hiệu vàng86 Huy hiệu bạc127 Huy hiệu đồng16 gold badges86 silver badges127 bronze badges
Hỏi ngày 7 tháng 8 năm 2010 lúc 12:17Aug 7, 2010 at 12:24
Biến đặc biệt
'C:\\python27\\'
7 chứa đường dẫn đến tệp hiện tại. Từ đó chúng ta có thể nhận thư mục bằng mô -đun 'C:\\python27\\'
8 hoặc 'C:\\python27\\'
9.Bryan OakleyPython 348 gold badges509 silver badges654 bronze badges
27
Đối với thư mục của tập lệnh đang được chạy:
from pathlib import Path
print["File Path:", Path[__file__].absolute[]]
print["Directory Path:", Path[].absolute[]] # Directory of current working directory, not __file__
Đối với thư mục làm việc hiện tại: If using Jupyter Notebook,
'C:\\python27\\'
7 doesn't return expected
value, so import pathlib
pathlib.Path[__file__].parent.resolve[]
5 has to be used.
Mateen Ulhaq
22.3K16 Huy hiệu vàng86 Huy hiệu bạc127 Huy hiệu đồng16 gold badges86 silver badges127 bronze badges
Hỏi ngày 7 tháng 8 năm 2010 lúc 12:17Apr 30, 2018 at 10:51
Biến đặc biệt
'C:\\python27\\'
7 chứa đường dẫn đến tệp hiện tại. Từ đó chúng ta có thể nhận thư mục bằng mô -đun 'C:\\python27\\'
8 hoặc 'C:\\python27\\'
9.Ron KalianPython 32 gold badges14 silver badges22 bronze badges
10
Đối với thư mục của tập lệnh đang được chạy:
from pathlib import Path
path = Path[__file__].parent.absolute[]
Explanation:
- Đối với thư mục làm việc hiện tại:
- Python 2 và 3
- Nếu bạn có nghĩa là thư mục làm việc hiện tại:
Lưu ý rằng trước và sau
import pathlib
pathlib.Path[__file__].parent.resolve[]
0 là hai dấu gạch dưới, không chỉ một.Cũng lưu ý rằng nếu bạn đang chạy tương tác hoặc có mã được tải từ một cái gì đó không phải là tệp [ví dụ: cơ sở dữ liệu hoặc tài nguyên trực tuyến],
'C:\\python27\\'
7 có thể không được đặt ra vì không có khái niệm về "tệp hiện tại". Câu trả lời trên giả định kịch bản phổ biến nhất của việc chạy tập lệnh Python có trong một tệp.Feb 26, 2019 at 18:36
Người giới thiệuArminius
Pathlib trong tài liệu Python.17 silver badges21 bronze badges
2
Os.Path - Python 2.7, Os.Path - Python 3
import os
dir_path = os.path.dirname[os.path.realpath[__file__]]
OS.GetCwd - Python 2.7, Os.GetCwd - Python 3May 23, 2019 at 9:51
1
import os
print[os.path.dirname[__file__]]
Biến __file__ có nghĩa là gì/làm?
Đã trả lời ngày 7 tháng 8 năm 2010 lúc 12:243 gold badges31 silver badges42 bronze badges
Hỏi ngày 7 tháng 8 năm 2010 lúc 12:17Aug 7, 2010 at 12:24
Biến đặc biệt
'C:\\python27\\'
7 chứa đường dẫn đến tệp hiện tại. Từ đó chúng ta có thể nhận thư mục bằng mô -đun 'C:\\python27\\'
8 hoặc 'C:\\python27\\'
9.chefsmartPython 39 gold badges41 silver badges47 bronze badges
3
Đối với thư mục của tập lệnh đang được chạy:
Đối với thư mục làm việc hiện tại:
'C:\\python27\\'
0Python 2 và 3
- Nếu bạn có nghĩa là thư mục làm việc hiện tại:
- Lưu ý rằng trước và sau
0 là hai dấu gạch dưới, không chỉ một.import pathlib pathlib.Path[__file__].parent.resolve[]
- Cũng lưu ý rằng nếu bạn đang chạy tương tác hoặc có mã được tải từ một cái gì đó không phải là tệp [ví dụ: cơ sở dữ liệu hoặc tài nguyên trực tuyến],
7 có thể không được đặt ra vì không có khái niệm về "tệp hiện tại". Câu trả lời trên giả định kịch bản phổ biến nhất của việc chạy tập lệnh Python có trong một tệp..'C:\\python27\\'
Người giới thiệufile].parent[].absolute[]
Pathlib trong tài liệu Python.Oct 12, 2019 at 18:20
Os.Path - Python 2.7, Os.Path - Python 3Sun Bear
OS.GetCwd - Python 2.7, Os.GetCwd - Python 311 gold badges46 silver badges93 bronze badges
2
Biến __file__ có nghĩa là gì/làm?
'C:\\python27\\'
1Đã trả lời ngày 7 tháng 8 năm 2010 lúc 12:24 ABSOLUTE PATH IS THE PATH WHERE YOUR PYTHON FILE IS PLACED
Bryan Oakleybryan Oakley
351K48 Huy hiệu vàng509 Huy hiệu bạc654 Huy hiệu Đồng
Sử dụng
import pathlib
pathlib.Path[__file__].parent.resolve[]
2 từ 'C:\\python27\\'
8 là cách được đề xuất kể từ Python 3:Lưu ý: Nếu sử dụng Notebook Jupyter,
'C:\\python27\\'
7 không trả về giá trị mong đợi, vì vậy import pathlib
pathlib.Path[__file__].parent.resolve[]
5 phải được sử dụng.Đã trả lời ngày 30 tháng 4 năm 2018 lúc 10:51
Biến __file__ có nghĩa là gì/làm?
Đã trả lời ngày 7 tháng 8 năm 2010 lúc 12:243 gold badges31 silver badges42 bronze badges
Bryan Oakleybryan OakleyMar 10, 2019 at 4:06
351K48 Huy hiệu vàng509 Huy hiệu bạc654 Huy hiệu ĐồngArpan Saini
Sử dụng
2 từ import pathlib
pathlib.Path[__file__].parent.resolve[]
8 là cách được đề xuất kể từ Python 3:35 silver badges44 bronze badges'C:\\python27\\'
3
Lưu ý: Nếu sử dụng Notebook Jupyter,
'C:\\python27\\'
7 không trả về giá trị mong đợi, vì vậy import pathlib
pathlib.Path[__file__].parent.resolve[]
5 phải được sử dụng.'C:\\python27\\'
2Đã trả lời ngày 30 tháng 4 năm 2018 lúc 10:51
'C:\\python27\\'
3Ron Kalianron KalianMar 7, 2018 at 5:50
2.9942 Huy hiệu vàng14 Huy hiệu bạc22 Huy hiệu đồngNafeez Quraishi
Trong Python 3.x tôi làm:2 gold badges24 silver badges31 bronze badges
8
import pathlib
pathlib.Path[__file__].parent.resolve[]
6 là đường dẫn đến tệp hiện tại.'C:\\python27\\'
4
import pathlib
pathlib.Path[__file__].parent.resolve[]
7 cung cấp cho bạn thư mục tệp đang ở.
8 cung cấp cho bạn con đường tuyệt đối đầy đủ cho nó.10 gold badges90 silver badges104 bronze
badgesimport pathlib
pathlib.Path[__file__].parent.resolve[]
Sử dụng
'C:\\python27\\'
8 là cách hiện đại để làm việc với các đường dẫn. Nếu bạn cần nó như một chuỗi sau này vì một số lý do, chỉ cần làm import pathlib
pathlib.Path[].resolve[]
0.Dec 27, 2018 at 10:35
Đã trả lời ngày 26 tháng 2 năm 2019 lúc 18:36Gil Allen
Arminiusarminius14 silver badges23 bronze badges
Python 2 và 3
Nếu bạn có nghĩa là thư mục làm việc hiện tại:
'C:\\python27\\'
5Lưu ý rằng trước và sau
import pathlib
pathlib.Path[__file__].parent.resolve[]
0 là hai dấu gạch dưới, không chỉ một.'C:\\python27\\'
6Cũng lưu ý rằng nếu bạn đang chạy tương tác hoặc có mã được tải từ một cái gì đó không phải là tệp [ví dụ: cơ sở dữ liệu hoặc tài nguyên trực tuyến],
'C:\\python27\\'
7 có thể không được đặt ra vì không có khái niệm về "tệp hiện tại". Câu trả lời trên giả định kịch bản phổ biến nhất của việc chạy tập lệnh Python có trong một tệp.Aug 25 at 19:06
Người giới thiệuGiorgos Xou
Pathlib trong tài liệu Python.1 gold badge8 silver badges23 bronze badges
1