Tôi có một con trăn kịch bản đơn giản như vậy:Đi qua một chuỗi đa dòng như một tham số để một kịch bản trong Windows
import sys
lines = sys.argv[1]
for line in lines.splitlines():
print line
tôi muốn gọi nó từ dòng lệnh (hoặc một tập tin .bat) nhưng đối số đầu tiên có thể (và có lẽ sẽ) là một chuỗi có nhiều dòng trong đó. Làm thế nào để làm điều này?
Tất nhiên, công trình này:
import sys
lines = """This is a string
It has multiple lines
there are three total"""
for line in lines.splitlines():
print line
Nhưng tôi cần để có thể xử lý một line-by-line tranh cãi.
EDIT: Đây có lẽ là một vấn đề dòng lệnh của Windows hơn là một vấn đề về Python.
CHỈNH SỬA 2: Cảm ơn tất cả các đề xuất tốt. Nó không giống như nó có thể. Tôi không thể sử dụng một trình bao khác vì tôi thực sự đang cố gắng gọi kịch bản từ một chương trình khác mà dường như sử dụng dòng lệnh Windows đằng sau hậu trường.
Tôi không hiểu - hiện giờ bạn không làm việc gì? –
Bạn nên chia nhỏ bằng "\ n" và xóa trước "\ r" để có khả năng tương thích nền tảng tốt hơn. Có 'bash' đặt carraige trả về trong các đối số của nó? (Không chắc). –
Bạn không nên sử dụng mô-đun chuỗi nào cả. Dòng đó nên đọc 'lines = multiline.splitlines()' –