script, filename = argv
need more than 1 value to unpack
Câu lệnh trên cần argv là 1 tuple có 2 items, thì mới gán với 2 biến bên trái được.
bạn thử chạy 1 script như này: script, filename = 1 sẽ báo lỗi tương tự
còn script, filename = 1, 2 sẽ không báo lỗi
Cách post code lên diễn đàn: thêm dấu ` vào trước và sau code để nhìn cho đẹp nhé.
ví dụ `code` sẽ ra code
hoặc có thể dùng 2 dấu nháy, 3 dấu nháy (nhiều dòng)
Bạn đang học theo learnpythonthehardway, mình nghĩ bạn nên thực hành theo hướng dẫn, lỗi của bạn là khi chạy chương trình bạn quên chưa đưa tham số vào như hướng dẫn:
Đấy là mình ví dụ cho bạn thôi.
Trong python thì phép gán giá trị biến có thể được viết linh hoạt như vậy.
Các ngôn ngữ khác bạn chỉ gán được 1 biến 1 lệnh, nhưng python thì có thể gán nhiều biến.
Khi gán thì số lượng biến ở 2 vế trái phải bằng số lượng giá trị ở vế phải need more than 1 value to unpack dịch là cần hơn 1 giá trị để gán
Chịu khó dùng cả google translate nhé
python ReadingFile text.txt
em copy code của trang leaning python ạ
`from sys import argv
script, filename = argv
print “We’re going to erase %r.” % filename
print “If you don’t want that, hit CTRL-C (^C).”
print “If you do want that, hit RETURN.”
raw_input("?")
print “Opening the file…”
target = open(filename, ‘w’)
print “Truncating the file. Goodbye!”
target.truncate()
print “Now I’m going to ask you for three lines.”
line1 = raw_input("line 1: ")
line2 = raw_input("line 2: ")
line3 = raw_input("line 3: ")
print “I’m going to write these to the file.”
target.write(line1)
target.write("\n")
target.write(line2)
target.write("\n")
target.write(line3)
target.write("\n")
print “And finally, we close it.”
target.close()
tại vì có thể truyền tên file rồi đọc, nên không truyền tham số file ạ. Do lỗi gì ấy ạ!!!
Như mình bảo, chạy thử lệnh bên dưới
lỗi được thông báo trên màn hình:
Câu lệnh trên cần argv là 1 tuple có 2 items, thì mới gán với 2 biến bên trái được.
bạn thử chạy 1 script như này:
script, filename = 1
sẽ báo lỗi tương tựcòn
script, filename = 1, 2
sẽ không báo lỗiCách post code lên diễn đàn: thêm dấu
`
vào trước và sau code để nhìn cho đẹp nhé.ví dụ
`code`
sẽ racode
hoặc có thể dùng 2 dấu nháy, 3 dấu nháy (nhiều dòng)
OK, thank ạ, tại hôm xem hướng dẫn rồi, ít đăng lại quên ạ…Cảm ơn ạ!!!
sửa =1,2 như anh thì chạy được, nhưng e không hiểu ạ, tại sao lại 1,2 ạ?
Bạn đang học theo learnpythonthehardway, mình nghĩ bạn nên thực hành theo hướng dẫn, lỗi của bạn là khi chạy chương trình bạn quên chưa đưa tham số vào như hướng dẫn:
python .\ex16.py test.txt
Đây là lúc mình thử
Đấy là mình ví dụ cho bạn thôi.
Trong python thì phép gán giá trị biến có thể được viết linh hoạt như vậy.
Các ngôn ngữ khác bạn chỉ gán được 1 biến 1 lệnh, nhưng python thì có thể gán nhiều biến.
Khi gán thì số lượng biến ở 2 vế trái phải bằng số lượng giá trị ở vế phải
need more than 1 value to unpack
dịch làcần hơn 1 giá trị để gán
Chịu khó dùng cả google translate nhé
ok cảm ơn anh ạ!.. Em đã hiểu