Bạn mở tệp để viết theo cách bạn làm để đọc, ngoại trừ chế độ 1 thay vì chế độ 2 Show
Bạn ghi vào một tệp bằng cách gọi 3 trên tệp đó giống như cách bạn đọc bằng cách gọi 4 hoặc 5Đây là tất cả được giải thích trong phần đọc và viết các tập tin của hướng dẫn Vì vậy, nếu mã hiện tại của bạn trông giống như thế này
Bạn chỉ cần làm điều này
Nếu bạn đang tìm cách cho phép người dùng vượt qua tên tệp trên dòng lệnh, hãy sử dụng 6 để lấy tên tệp sử dụng hoặc sử dụng 0 để phân tích các đối số dòng lệnh phức tạp hơnVí dụ. you can change the first line to this control
Bây giờ, bạn có thể chạy chương trình như thế này 0Cập nhật lần cuối vào ngày 21 tháng 6 năm 2022 Chạy tập lệnh Python của bạn là một bước quan trọng trong quá trình phát triển bởi vì theo cách này, bạn sẽ thấy mã của bạn có hoạt động như bạn dự kiến không. Ngoài ra, đó thường là trường hợp chúng ta cần truyền thông tin cho lệnh Python để nó hoạt động Trong hướng dẫn này, bạn sẽ khám phá nhiều cách chạy và truyền thông tin khác nhau đến kịch bản Python Sau khi hoàn thành hướng dẫn này, bạn sẽ biết
Bắt đầu dự án của bạn với cuốn sách Python mới cho Machine Learning, bao gồm các hướng dẫn từng bước và các tệp mã nguồn Python cho tất cả các ví dụ. với cuốn sách mới của tôi Python for Machine Learning, bao gồm các hướng dẫn từng bước và các tệp mã nguồn Python cho tất cả các ví dụ Started anyChuyển và chuyển thông tin cho một bức ảnh kịch bản python của Andrea Leopardi, một số quyền đã được bảo lưu. Tổng hướng dẫnHướng dẫn này được chia thành hai phần;
Run the Python fileUse the command line interfaceSử dụng ghi chép sao chép Jupyter Sử dụng môi trường phát triển tích hợp (IDE) Đầu vào Python python trong giao diện dòng lệnh của bạn sẽ bắt đầu phiên tương tác Python. Bạn sẽ thấy một thông báo xuất hiện cho bạn biết phiên bản Python mà bạn đang sử dụng. Run the Python file Giao diện dòng lệnh được sử dụng rộng rãi để chạy mã Python.   Hãy thử nghiệm một vài lệnh bằng cách mở một dấu nhắc lệnh hoặc cửa sổ đầu cuối, tùy thuộc vào hệ điều hành mà bạn đang làm việc.   Bất kỳ câu lệnh nào bạn viết trong giao diện dòng lệnh của bạn trong một phiên hợp tác sẽ được thực hiện ngay lập tức. Ví dụ. enter 2 + 3 return value 5 Sử dụng một phiên bản tương tác theo cách này có lợi thế của nó vì bạn có thể kiểm tra các dòng mã Python một cách dễ dàng và nhanh chóng. Tuy nhiên, đó không phải là lựa chọn lý tưởng nếu chúng ta quan tâm hơn đến việc viết các chương trình dài hơn, như trường hợp nếu chúng ta đang phát triển một thuật toán học máy. Biến mã cũng bị mất khi phiên tương tác bị chấm dứt. & NBSP; Một tùy chọn thay thế sẽ là kịch bản Python. Hãy bắt đầu với một ví dụ đơn giản trước. & NBSP; Trong một trình soạn thảo văn bản (không hạn chế như Notepad ++, Visual Studio Code hay văn bản siêu phàm), nhập câu lệnh . ") and save file to test_script. py & nbsp; . py. in("Xin chào thế giới. ") và lưu tệp vào test_script. py hoặc bất kỳ tên nào khác mà bạn chọn miễn là bạn bao gồm một. phần mở rộng py. Hiện tại, quay trở lại giao diện dòng lệnh của bạn và nhập lệnh Python, theo sau là tên của tệp lệnh của bạn. Trước khi bạn làm như vậy, bạn có thể cần thay đổi đường dẫn để con trỏ đến thư mục chứa tệp lệnh. Run file after that will create a after. Lệnh python , theo sau là tên tệp tập lệnh của bạn. Trước khi làm như vậy, bạn có thể cần thay đổi đường dẫn để trỏ đến thư mục chứa tệp script. Chạy tệp script sau đó sẽ tạo ra đầu ra sau. Hiện tại, chúng ta hãy viết một tệp lệnh tải mô hình Keras được đào tạo trước đó và đưa ra dự đoán cho hình ảnh này của một con chó con. Đó thường là trường hợp chúng tôi cũng cần truyền thông tin cho lệnh Python dưới dạng các đối số dòng lệnh. Với mục đích này, chúng tôi sẽ sử dụng & nbsp; . argv & nbsp; . Chúng tôi có thể có nhiều đối số bắt đầu như mã yêu cầu, trong trường hợp đó chúng tôi sẽ tiếp tục đọc các đối số đầu vào từ danh sách đối số. & nbsp; sys. argv lệnh để chuyển cho tập lệnh đường dẫn hình ảnh và số lượng dự đoán hàng đầu sẽ trả về. Chúng tôi có thể có nhiều đối số đầu vào như mã yêu cầu, trong trường hợp đó, chúng tôi sẽ tiếp tục đọc các đầu vào từ danh sách đối số. Tệp lệnh mà chúng tôi sẽ chạy hiện có chứa mã sau 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Nhập khẩusys Nhập khẩu Asnpnumpy asnp FromTensorFlow. máy ảnh. Phablations Nhập khẩuvgg16tensorflow. máy ảnh. ứng dụng nhậpvgg16 FromTensorFlow. máy ảnh. Các ứng dụng. VGG16 IMPINTPROCESS_INPUT, DECODE_PREDICTIONS tensorflow. máy ảnh. ứng dụng. vgg16 nhậppreprocess_input,decode_predictions FromTensorFlow. máy ảnh. Tiền xử lý Nhập khẩutensorflow. máy ảnh. tiền xử lý nhậphình ảnh # Tải mô hình VGG16 được đào tạo trước trên bộ dữ liệu ImageNet vgg16_model=vgg16. VGG16(weights='imagenet')=vgg16. VGG16(trọng số=') # Đọc đối số dòng lệnh được chuyển cho trình thông dịch khi gọi tập lệnh image_path=sys. argv[1]=sys. argv[1] top_guesses=sys. argv[2] =sys. argv[2] # Tải ảnh, được thay đổi kích thước theo kích thước mục tiêu mô hình img_resized=hình ảnh. load_img(image_path,target_size=(224,224))=hình ảnh. load_img(image_path,target_size=(224, 224)) # Chuyển đổi hình ảnh thành một mảng img=hình ảnh. img_to_array(img_resized)=hình ảnh. img_to_array(img_resized) # Thêm vào một chiều img=np. expand_dims(img,axis=0)=np. expand_dims(img, axis=0) # Tỷ lệ pixel cường độ giá trị img=pre process_input(img)=pre process_input(img) # Tạo dự đoán cho thử nghiệm hình ảnh pred_vgg=vgg16_model. dự đoán(img)= vgg16_model. dự đoán(img) # Giải mã và trong 3 dự đoán hàng đầu print('Dự đoán. ',decode_predictions(pred_vgg,top=int(top_guesses)))('Dự đoán. ',decode_predictions(pred_vgg,top=int(top_guesses))) Trong mã trên, chúng tôi đọc các đối số dòng lệnh bằng cách sử dụng 1 và 2 cho hai đối số đầu tiên. Chúng ta có thể chạy tệp lệnh bằng cách sử dụng lệnh_______03 theo sau là tên của tệp lệnh và chuyển tiếp nó làm đối số cho đường dẫn ảnh (sau khi ảnh đã được lưu vào đĩa) và số lượng dự kiến hàng đầu Python Pretraining_Model. con chó py. jpg3pretraining_model. py chó. jpg3 Ở đây, presrained_model. py is name of file script and image dog. jpg đã được lưu vào cùng một thư mục chứa tập lệnh Python. & NBSP; Ba dự đoán hàng đầu được tạo ra như sau Dự đoán. [[('N02088364', 'Beagle', 0. 6751468), ('N02089867', 'Walker_Hound', 0. 1394801), ('N02089973' But could have more than in command line. Ví dụ. dòng lệnh sau đây sẽ chạy tập lệnh trong chế độ tối ưu hóa trên mạng, trong đó biến đổi lỗi 4 was set to the command_______05 and 6 isbỏ quaVà sau đây là khởi động tập lệnh với mô-đun Python, chẳng hạn như trình giải quyết lỗi python-mpdbtest_script. py-mpdbtest_script. py Chúng tôi sẽ có một bài viết khác về việc sử dụng trình gỡ lỗi và trình biên dịch Sử dụng máy tính xách tay JupyterChạy tập lệnh Python từ giao diện dòng lệnh là một tùy chọn đơn giản nếu mã của bạn tạo ra chuỗi đầu ra và không có nhiều thứ khác. & NBSP; Tuy nhiên, khi chúng tôi đang làm việc với hình ảnh, thông thường tôi muốn tạo ra một cái đầu ra trực quan. Chúng tôi có thể kiểm tra tính xác thực của bất kỳ quá trình xử lý tiền xử lý nào được áp dụng cho hình ảnh từ đầu trước khi đưa nó vào mạng thần kinh hoặc trực tiếp hóa kết quả mà mạng thần kinh tạo ra. Notebook Jupyter cung cấp một môi trường điện tương tác có thể giúp chúng tôi làm toán đạt được điều này Một cách để chạy tập lệnh Python thông qua giao diện Notebook Jupyter chỉ cần thêm mã vào một ô trên máy tính xách tay. Nhưng điều này có nghĩa là mã của bạn ở bên trong ghi chép Jupyter và không thể truy cập được ở nơi khác, giả sử hạn chế sử dụng dòng lệnh như trên. Một cách khác là sử dụng lệnh Run Magic, được tiền tố bởi . Cố gắng nhập mã sau vào ô trong Notebook Jupyter. Lệnh ma thuật chạy , bắt đầu bằng ký tự % . Hãy thử nhập đoạn mã sau vào một ô trong Jupyter Notebook. %Chạy Pretraining_model. con chó py. jpg3chạy pretraining_model. py chó. jpg3 Ở đây, chúng tôi một lần nữa chỉ định tên của tệp lệnh Python là presrained_model. py, & nbsp; . Bạn sẽ thấy rằng ba dự đoán hàng đầu được ở bên dưới ô tạo ra kết quả này. & NBSP; Bây giờ, hãy nói rằng chúng tôi muốn hiển thị hình ảnh đầu vào để kiểm tra xem nó đã được tải xuống theo kích thước mục tiêu mô hình. Với mục đích này, chúng tôi sẽ sửa đổi mã một chút như sau và lưu nó vào tệp lệnh Python mới, Pretraining_model_image. py 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 Nhập khẩusys Nhập khẩu Asnpnumpy asnp Nhập khẩuMatplotlib. Pyplot Aspltmatplotlib. pyplot asplt FromTensorFlow. máy ảnh. Phablations Nhập khẩuvgg16tensorflow. máy ảnh. ứng dụng nhậpvgg16 FromTensorFlow. máy ảnh. Các ứng dụng. VGG16 IMPINTPROCESS_INPUT, DECODE_PREDICTIONS tensorflow. máy ảnh. ứng dụng. vgg16 nhậppreprocess_input,decode_predictions FromTensorFlow. máy ảnh. Tiền xử lý Nhập khẩutensorflow. máy ảnh. tiền xử lý nhậphình ảnh # Tải mô hình VGG16 được đào tạo trước trên bộ dữ liệu ImageNet vgg16_model=vgg16. VGG16(weights='imagenet')=vgg16. VGG16(trọng số=') # Đọc các tham số đã được chuyển cho trình thông dịch khi gọi lệnh tập tin image_path=sys. argv[1]=sys. argv[1] top_guesses=sys. argv[2] =sys. argv[2] # Tải ảnh, được thay đổi kích thước theo kích thước mục tiêu mô hình img_resized=hình ảnh. load_img(image_path,target_size=(224,224))=hình ảnh. load_img(image_path,target_size=(224, 224)) # Chuyển đổi hình ảnh thành một mảng img=hình ảnh. img_to_array(img_resized)=hình ảnh. img_to_array(img_resized) # Hiển thị hình ảnh để kiểm tra xem nó có bị thay đổi chính xác không plt. imshow(img. astype(np. uint8)). imshow(img. astype(np. uint8)) # Thêm vào một chiều img=np. expand_dims(img,axis=0)=np. expand_dims(img,axis=0) # Tỷ lệ pixel cường độ giá trị img=pre process_input(img)=pre process_input(img) # Tạo dự đoán cho thử nghiệm hình ảnh pred_vgg=vgg16_model. dự đoán(img)=vgg16_model. dự đoán(img) # Giải mã và trong 3 dự đoán hàng đầu print('Dự đoán. ',decode_predictions(pred_vgg,top=int(top_guesses)))('Dự đoán. ',decode_predictions(pred_vgg, top=int(top_guesses))) Chạy tập lệnh Python mới được lưu thông qua giao diện Notebook Jupyter hiện hiển thị hình ảnh pixel $ 224 \ Times 224 $, ngoài ra còn có trong ba dự đoán hàng đầu %Chạy Pretraining_model_image. con chó py. jpg3chạy pretraining_model_image. py chó. jpg3 Run script Python in write copy Jupyter Ngoài ra, chúng ta có thể cắt giảm mã thành phần sau (và lưu nó vào một Python file khác, Pretraining_model_inputs. py) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 # Tải mô hình VGG16 được đào tạo trước trên bộ dữ liệu ImageNet vgg16_model=vgg16. VGG16(weights='imagenet')=vgg16. VGG16(trọng số=') # Tải ảnh, được thay đổi kích thước theo kích thước mục tiêu mô hình img_resized=hình ảnh. load_img(image_path,target_size=(224,224))= hình ảnh. load_img(image_path,target_size=(224,224)) # Chuyển đổi hình ảnh thành một mảng img=hình ảnh. img_to_array(img_resized)=hình ảnh. img_to_array(img_resized) # Hiển thị hình ảnh để kiểm tra xem nó có bị thay đổi chính xác không plt. imshow(img. astype(np. uint8)). imshow(img. astype(np. uint8)) # Thêm vào một chiều img=np. expand_dims(img,axis=0)= np. expand_dims(img,axis=0) # Tỷ lệ pixel cường độ giá trị img=pre process_input(img)=pre process_input(img) # Tạo dự đoán cho thử nghiệm hình ảnh pred_vgg=vgg16_model. dự đoán(img) =vgg16_model. dự đoán(img) # Giải mã và trong 3 dự đoán hàng đầu print('Dự đoán. ',decode_predictions(pred_vgg,top=top_guesses))('Dự đoán. ',decode_predictions(pred_vgg,top=top_guesses)) Chạy tập lệnh Python mới được lưu thông qua giao diện Notebook Jupyter hiện hiển thị hình ảnh pixel $ 224 \ Times 224 $, ngoài ra còn có trong ba dự đoán hàng đầu. -i tùy chọn sau %run magic: %run-ipretraining_model_inputs. pychạy-ipretraining_model_inputs. py Run script Python in write copy Jupyter Ngoài ra, chúng ta có thể cắt giảm mã thành phần sau (và lưu nó vào một lệnh Python khác, Pretraining_model_inputs. py). Và xác định các biến đầu vào trong một ô của máy tính xách tay chính Jupyter. Chạy tập lệnh Python theo cách này sẽ yêu cầu chúng tôi cũng sử dụng & nbsp; . Ưu điểm của công việc như vậy là có quyền truy cập dễ dàng hơn vào các biến bên trong tập lệnh Python có thể được xác định tương tác.  Khi mã của bạn phát triển, việc kết hợp việc sử dụng Trình chỉnh sửa văn bản với Jupyter Notebook có thể cung cấp một cách thuận lợi về phía trước. Trình chỉnh sửa văn bản có thể được sử dụng để tạo tập lệnh Python, mà mã cửa hàng có thể được sử dụng lại, trong khi Jupyter Notebook cung cấp môi trường điện toán tương tác để khám phá dữ liệu dễ dàng hơn. Bạn muốn bắt đầu với Python để học máy? Tham gia khóa học gặp sự cố email 7 ngày miễn phí của tôi ngay bây giờ (có mã mẫu)Nhấp để đăng ký và cũng nhận được phiên bản Ebook PDF miễn phí của khóa học. Sử dụng môi trường phát triển hợp nhất (IDE) Một tùy chọn khác là chạy tập lệnh Python từ IDE. Điều này yêu cầu dự án được tạo lần đầu tiên và tập lệnh Python có phần mở rộng. py được thêm vào nó.  Nếu chúng tôi phải coi Pycharm hoặc Visual Studio Code là IDE của sự lựa chọn, điều này sẽ yêu cầu chúng tôi tạo một dự án mới và sau đó chọn phiên bản Python mà chúng tôi muốn làm việc. Sau khi thêm tập lệnh Python vào dự án mới được tạo, điều này có thể được chạy để tạo đầu ra. Sau đây là ảnh chụp màn hình của Run Visual Studio Code trên MacOS. Tùy thuộc vào IDE, cần có tùy chọn để chạy mã có hoặc không có trình gỡ lỗi. sys. argv hoặc bằng cách mã hóa cứng các biến đầu vào trong Jupyter Notebook trước khi chạy tập lệnh. Một tùy chọn khác là lấy đầu vào từ người dùng thông qua đầu vào () & nbsp; . & nbsp; đầu vào() chức năng. Xem xét mã sau 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Nhập khẩu Asnpnumpy asnp Nhập khẩuMatplotlib. Pyplot Aspltmatplotlib. pyplot asplt FromTensorFlow. máy ảnh. Phablations Nhập khẩuvgg16tensorflow. máy ảnh. ứng dụng nhậpvgg16 FromTensorFlow. máy ảnh. Các ứng dụng. VGG16 IMPINTPROCESS_INPUT, DECODE_PREDICTIONS tensorflow. máy ảnh. ứng dụng. vgg16 nhậppreprocess_input,decode_predictions FromTensorFlow. máy ảnh. Tiền xử lý Nhập khẩutensorflow. máy ảnh. tiền xử lý nhậphình ảnh # Tải mô hình VGG16 được đào tạo trước trên bộ dữ liệu ImageNet vgg16_model=vgg16. VGG16(weights='imagenet')=vgg16. VGG16(trọng số=') # Hỏi người dùng để bắt đầu vào thủ công Image_path = input ("Nhập đường dẫn hình ảnh. ")=đầu vào("Nhập đường dẫn hình ảnh. ") top_guesses = input("Nhập số lượng phỏng đoán hàng đầu. ")= đầu vào("Nhập số lần đoán nhiều nhất. ") # Tải ảnh, được thay đổi kích thước theo kích thước mục tiêu mô hình img_resized=hình ảnh. load_img(image_path,target_size=(224,224))=hình ảnh. load_img(image_path,target_size=(224, 224)) # Chuyển đổi hình ảnh thành một mảng img=hình ảnh. img_to_array(img_resized)=hình ảnh. img_to_array(img_resized) # Thêm vào một chiều img=np. expand_dims(img,axis=0)=np. expand_dims(img, axis=0) # Tỷ lệ pixel cường độ giá trị img=pre process_input(img)=pre process_input(img) # Tạo dự đoán cho thử nghiệm hình ảnh pred_vgg=vgg16_model. dự đoán(img)= vgg16_model. dự đoán(img) # Giải mã và trong 3 dự đoán hàng đầu print('Dự đoán. ',decode_predictions(pred_vgg,top=int(top_guesses)))('Dự đoán. ',decode_predictions(pred_vgg,top=int(top_guesses))) Ở đây, người dùng được nhắc nhập thủ thuật đường dẫn hình ảnh (hình ảnh đã được lưu vào cùng một thư mục chứa tệp lệnh Python và thực hiện điều đó, chỉ định tên hình ảnh là đủ) và số lượng dự kiến . Cả hai giá trị đầu vào đều thuộc chuỗi; . & NBSP; Không có vấn đề gì nếu mã này được chạy trong giao diện dòng lệnh, trong Notebook Jupyter hoặc trong IDE Python, nó sẽ nhắc người dùng về các đầu vào cần thiết và sau đó tạo ra số lượng dự đoán mà . & NBSP; Đọc thêmPhần này cung cấp nhiều tài nguyên hơn về chủ đề nếu bạn muốn đi sâu hơn sách
BẢNG XÁC SUẤTTrong hướng dẫn này, bạn đã phát hiện ra nhiều cách chạy và truyền thông tin khác nhau đến một kịch bản Python |