Hướng dẫn python filename argument - đối số tên tệp python

25

Nội dung chính ShowShow

  • Làm thế nào để bạn vượt qua một con đường như một cuộc tranh luận trong Python?
  • Làm thế nào để bạn vượt qua một đường dẫn thư mục trong Python?
  • Làm thế nào để bạn đưa ra một đường dẫn tệp trong Python?
  • Làm thế nào để bạn gán một đường dẫn đến một biến trong Python?

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.
Learn more.

Bất cứ ai có thể hướng dẫn tôi làm thế nào tôi có thể nhận được đường dẫn tệp nếu chúng tôi chuyển tệp từ đối số dòng lệnh và trình trích xuất tệp. Trong trường hợp chúng ta cũng cần kiểm tra xem tệp có tồn tại thành thư mục cụ thể không

python.py /home/abhishek/test.txt

Nhận đường dẫn tệp và kiểm tra kiểm tra.txt tồn tại vào thư mục Abhishek.

Tôi biết nó có thể rất dễ dàng nhưng tôi có một chút mới với Pytho

Hướng dẫn python filename argument - đối số tên tệp python

hỏi ngày 16 tháng 1 năm 2013 lúc 14:14Jan 16, 2013 at 14:14Jan 16, 2013 at 14:14

import os
import sys

fn = sys.argv[1]
if os.path.exists(fn):
    print os.path.basename(fn)
    # file exists

Đã trả lời ngày 16 tháng 1 năm 2013 lúc 14:15Jan 16, 2013 at 14:15Jan 16, 2013 at 14:15

Eumiroeumiroeumiroeumiro

199K34 Huy hiệu vàng294 Huy hiệu bạc259 Huy hiệu Đồng34 gold badges294 silver badges259 bronze badges34 gold badges294 silver badges259 bronze badges

2

Bắt đầu với Python 3.4, bạn có thể sử dụng argparse cùng với pathlib:

import argparse
from pathlib import Path

parser = argparse.ArgumentParser()
parser.add_argument("file_path", type=Path)

p = parser.parse_args()
print(p.file_path, type(p.file_path), p.file_path.exists())

Đã trả lời ngày 23 tháng 5 năm 2019 lúc 9:00May 23, 2019 at 9:00May 23, 2019 at 9:00

Nijmnijmnijmnijm

2.11712 huy hiệu bạc28 Huy hiệu đồng12 silver badges28 bronze badges12 silver badges28 bronze badges

Tôi nghĩ rằng cách thanh lịch nhất là sử dụng ArgumentParser theo cách này, bạn thậm chí còn nhận được tùy chọn -h giúp người dùng tìm ra cách vượt qua các đối số. Tôi cũng đã bao gồm một đối số tùy chọn (--outputDirectory).

Bây giờ bạn có thể chỉ cần thực thi với python3 test.py /home/test.txt --outputDirectory /home/testDir/

import argparse
import sys
import os

def create_arg_parser():
    # Creates and returns the ArgumentParser object

    parser = argparse.ArgumentParser(description='Description of your app.')
    parser.add_argument('inputDirectory',
                    help='Path to the input directory.')
    parser.add_argument('--outputDirectory',
                    help='Path to the output that contains the resumes.')
    return parser


if __name__ == "__main__":
    arg_parser = create_arg_parser()
    parsed_args = arg_parser.parse_args(sys.argv[1:])
    if os.path.exists(parsed_args.inputDirectory):
       print("File exist")

Đã trả lời ngày 16 tháng 11 năm 2017 lúc 7:50Nov 16, 2017 at 7:50Nov 16, 2017 at 7:50

Ph03n1xPh03n1xPh03n1xPh03n1x

7646 Huy hiệu bạc12 Huy hiệu Đồng6 silver badges12 bronze badges6 silver badges12 bronze badges

Dùng cái này:

import sys
import os

path = sys.argv[1]

# Check if path exits
if os.path.exists(path):
    print "File exist"

# Get filename
print "filename : " + path.split("/")[-1]

Đã trả lời ngày 16 tháng 1 năm 2013 lúc 14:17Jan 16, 2013 at 14:17Jan 16, 2013 at 14:17

AtoztoaatoztoaATOzTOAATOzTOA

33.7K22 Huy hiệu vàng93 Huy hiệu bạc116 Huy hiệu đồng22 gold badges93 silver badges116 bronze badges22 gold badges93 silver badges116 bronze badges

Kiểm tra câu trả lờiBest AnswerBest Answer

Làm thế nào bạn nhập đường dẫn tệp vào dấu nhắc lệnh? & nbsp; mã của bạn hoạt động rất tốt cho tôi, vì vậy tôi nghĩ có lẽ đó là cách bạn chạy nó; Tất cả các công cụ Argparse là tốt. & nbsp; đây là những gì tôi có chính xác:

Python

# As you can see, this is pretty much identical to your code
from argparse import ArgumentParser
parser = ArgumentParser()
parser.add_argument("-f", "--file", dest="myFile", help="Open specified file")
args = parser.parse_args()
myFile = args.myFile

# This is the one part I added (the read() call)
text = open(myFile)
print(text.read())

# Then in the command prompt I navigated to the script folder and did it like this:
# my_script.py -f "C:\path\to\my\file to read.py"

Hy vọng điều đó sẽ giúp.

Bài đăng này có hữu ích không? Thumb_Up Thumb_down thumb_up thumb_down thumb_up thumb_down

Làm thế nào để bạn vượt qua một con đường như một cuộc tranh luận trong Python?

Để sử dụng nó, bạn chỉ cần chuyển một đường dẫn hoặc tên tệp vào một đối tượng đường dẫn mới () bằng cách sử dụng dấu gạch chéo về phía trước và nó xử lý phần còn lại: Lưu ý hai điều ở đây: bạn nên sử dụng dấu gạch chéo về phía trước với các hàm pathlib. Đối tượng đường dẫn () sẽ chuyển đổi các dấu gạch chéo về phía trước thành đúng loại chém cho hệ điều hành hiện tại.pass a path or filename into a new Path() object using forward slashes and it handles the rest: Notice two things here: You should use forward slashes with pathlib functions. The Path() object will convert forward slashes into the correct kind of slash for the current operating system.pass a path or filename into a new Path() object using forward slashes and it handles the rest: Notice two things here: You should use forward slashes with pathlib functions. The Path() object will convert forward slashes into the correct kind of slash for the current operating system.

Làm thế nào để bạn vượt qua một đường dẫn thư mục trong Python?

Để có được thư mục làm việc hiện tại trong Python, hãy sử dụng phương thức Os.getCwd ().Hàm này của mô -đun HĐH Python trả về chuỗi chứa đường dẫn tuyệt đối đến thư mục làm việc hiện tại.use the os.getcwd() method. This function of the Python OS module returns the string containing the absolute path to the current working directory.use the os. getcwd() method. This function of the Python OS module returns the string containing the absolute path to the current working directory.

Làm thế nào để bạn đưa ra một đường dẫn tệp trong Python?

KHUYẾN KHÍCH.Nếu sử dụng Backslash, vì nó là một nhân vật đặc biệt trong Python, bạn phải nhớ thoát khỏi mọi phiên bản: 'C: \\ users \\ narae \\ Desktop \\ alice.Thay vào đó, bạn có thể tiền tố toàn bộ chuỗi tên tệp với điểm đánh dấu RawString "r": r'c: \ users \ narae \ Desktop \ alice.

Làm thế nào để bạn gán một đường dẫn đến một biến trong Python?

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..

Bất cứ ai có thể hướng dẫn tôi làm thế nào tôi có thể nhận được đường dẫn tệp nếu chúng tôi chuyển tệp từ đối số dòng lệnh và trình trích xuất tệp. Trong trường hợp chúng ta cũng cần kiểm tra xem tệp có tồn tại thành thư mục cụ thể không

Nhận đường dẫn tệp và kiểm tra kiểm tra.txt tồn tại vào thư mục Abhishek.

Tôi biết nó có thể rất dễ dàng nhưng tôi có một chút mới với Pytho

hỏi ngày 16 tháng 1 năm 2013 lúc 14:14Jan 16, 2013 at 14:14

Đã trả lời ngày 16 tháng 1 năm 2013 lúc 14:15Jan 16, 2013 at 14:15

Eumiroeumiroeumiro

199K34 Huy hiệu vàng294 Huy hiệu bạc259 Huy hiệu Đồng34 gold badges294 silver badges259 bronze badges