30/09/2018, 19:06

các pro giúp em đây là lỗi gì ạ?

Traceback (most recent call last):
File “C:UsersHPDesktop ana.py”, line 3, in
script, filename = argv
ValueError: need more than 1 value to unpack

cái này là code:
from sys import argv

script, filename = argv

txt = open(filename)

print"her’s your file %r:" % filename
print txt.read()

print" Type the filename agin:"
file_again = raw_input("> ")

txt_again = open(file_again)

print txt_again.read()

Gió viết 21:07 ngày 30/09/2018

Thiếu tham số ở command line truyền vào argv.Vd bạn chạy ct: >python script.py filename

minhchaudm@gmail.com viết 21:13 ngày 30/09/2018

em chưa hiểu lắm anh có thể nó rõ hơn

... viết 21:07 ngày 30/09/2018

Nghĩa là bạn phải ghi rõ tên file bạn muốn mở để chương trình thực hiện được đoạn lệnh này

txt = open(filename)

print"her’s your file %r:" % filename

minhchaudm@gmail.com viết 21:13 ngày 30/09/2018

em ghi rõ rồi mà nó có chạy được đâu

Gió viết 21:11 ngày 30/09/2018

Để lệnh gán script, filename = argv chạy dc thì argv phải có 2 phần tử trở lên. Mà argv lấy ở đâu? cái này chỉ có ở chế độ command line bạn mới đưa vào dc.

Bình thường bạn chạy 1 chương trình python thì đơn giản gõ:

>python a.py

ở đây argv=["a.py"]

nếu bạn thêm filename để chạy

>python a.py "some file name here"

ở đây argv=["a.py",","some file name here"]
thì lúc đó filename mới có giá trị và chương trình mới chạy dc

Bài liên quan
0