Hướng dẫn how do you create a shortcut in python? - làm thế nào để bạn tạo một phím tắt trong python?

Hướng dẫn how do you create a shortcut in python? - làm thế nào để bạn tạo một phím tắt trong python?

Giới thiệu

Tôi thích sử dụng miniconda để cài đặt môi trường Python nhẹ trên Windows. Tôi cũng muốn tạo và tùy chỉnh các phím tắt Windows để khởi chạy các môi trường chung cư khác nhau trong các thư mục làm việc cụ thể. Đây là một mẹo đặc biệt hữu ích cho người dùng mới không quen thuộc với dòng lệnh trên & nbsp; windows.

Sau khi dành quá nhiều thời gian để cố gắng thiết lập các phím tắt đúng cách trên nhiều máy Windows, tôi đã dành một chút thời gian để tự động hóa quá trình tạo liên kết. Bài viết này sẽ thảo luận về cách sử dụng Python để tạo các phím tắt Windows tùy chỉnh để khởi chạy các môi trường Conda & NBSP;

Khởi chạy Windows & NBSP; môi trường

Miniconda rất tốt để hợp lý hóa việc cài đặt các gói trên Windows và sử dụng Conda cho Môi trường & NBSP; Quản lý.

Theo mặc định, Miniconda cố gắng có tác động tối thiểu đến hệ thống của bạn nhất có thể. Ví dụ: cài đặt mặc định sẽ không thêm bất kỳ thông tin Python nào vào đường dẫn mặc định của bạn, cũng như không yêu cầu đặc quyền quản trị để cài đặt. Đây là một điều tốt, nhưng điều đó có nghĩa là bạn cần thực hiện một vài bước bổ sung để có được môi trường Python của bạn hoạt động từ một dấu nhắc Windows tiêu chuẩn. Đối với người dùng mới, đây chỉ là một bước nữa trong quá trình cài đặt Python & NBSP;

May mắn thay, Anaconda (FKA Continuum) cung cấp tất cả các nền tảng để khởi chạy PowerShell hoặc Promer với mọi thứ được thiết lập cho môi trường của bạn. Trên thực tế, cài đặt mặc định sẽ tạo một số phím tắt để thực hiện chính xác & nbsp; điều đó.

Tuy nhiên, tôi đã có một thời gian khó khăn để sửa đổi các phím tắt này để tùy chỉnh thư mục làm việc. Ngoài ra, nó thực sự hữu ích để tự động hóa một thiết lập người dùng mới thay vì cố gắng đưa ai đó vượt qua quy trình tẻ nhạt này bằng tay. Do đó, sự cần thiết của tập lệnh này để tự động hóa quy trình & nbsp;

Đối với các mục đích của bài viết này, tôi sẽ chỉ thảo luận về cách sử dụng phương pháp nhắc lệnh để khởi chạy Python. Ngoài ra còn có một tùy chọn PowerShell phức tạp hơn một chút nhưng cùng một hiệu trưởng áp dụng cho & nbsp; cả hai.

Khi miniconda được cài đặt, cách ưa thích để khởi chạy vỏ Python là sử dụng tệp miniconda từ

import winshell
from pathlib import Path
4 để định cấu hình môi trường shell. Trên hệ thống của tôi (với cài đặt miniconda mặc định), tệp được lưu trữ ở đây:
import winshell
from pathlib import Path
5

Ngoài ra, tôi khuyên bạn nên giữ môi trường Conda

import winshell
from pathlib import Path
6 tương đối nhẹ và sử dụng một môi trường khác cho công việc thực tế của bạn. Trên hệ thống của tôi, tôi có một môi trường
import winshell
from pathlib import Path
7 mà tôi muốn khởi động với điều này & nbsp; phím tắt.

Khi Conda tạo ra một môi trường mới trên Windows, vị trí thư mục mặc định cho môi trường trông như thế này:

import winshell
from pathlib import Path
8. Bạn có thể chuyển đường dẫn đầy đủ này đến tệp
import winshell
from pathlib import Path
4 và nó sẽ khởi chạy cho bạn và tự động bắt đầu với môi trường
import winshell
from pathlib import Path
7 & NBSP; được kích hoạt.

Phần cuối cùng của câu đố khởi chạy là sử dụng

profile = winshell.folder('profile')
1 để chạy shell lệnh và quay lại lời nhắc sau khi shell là & nbsp; hoạt động.

Lệnh đầy đủ, nếu bạn gõ nó, sẽ trông giống như & nbsp; cái này:

cmd.exe /K C:/Users/CMoffitt/AppData/Local/Continuum/miniconda3/Scripts/activate.bat C:/Users/CMoffitt/AppData/Local/Continuum/miniconda3/envs/work

Khái niệm tổng thể là khá đơn giản. Thách thức là các đường dẫn trở nên khá dài và chúng tôi muốn thông minh về việc đảm bảo chúng tôi thực hiện điều này là chống trong tương lai và di động AS & NBSP; có thể.

Special Folders

Mô -đun Winshell làm cho quá trình làm việc với các phím tắt Windows dễ dàng hơn rất nhiều. Mô -đun này đã xuất hiện được một thời gian và gần đây chưa được cập nhật nhưng nó hoạt động tốt cho tôi. Vì nó là một trình bao bọc tương đối mỏng trên Pywin32, không cần phải tiếp tục cập nhật & nbsp; Winshell.

Đối với mục đích của bài viết này, tôi đã sử dụng Winshell để truy cập các thư mục đặc biệt, tạo các phím tắt và đọc các phím tắt. Tài liệu này rất đơn giản nhưng vẫn sử dụng

profile = winshell.folder('profile')
2 cho các thao tác đường dẫn tệp vì vậy tôi quyết định cập nhật các ví dụ của mình để sử dụng pathlib. Bạn có thể tham khảo bài viết trước của tôi cho phần giới thiệu với & nbsp; pathlib.

Một trong những khía cạnh hữu ích của Winshell là nó cung cấp cho bạn các phím tắt để truy cập các thư mục đặc biệt trên Windows. Nó có một thực tiễn tốt nhất không phải là các đường dẫn mã cứng mà sử dụng các bí danh mà Windows cung cấp. Bằng cách này, các tập lệnh của bạn sẽ hoạt động liền mạch trên máy khác của người khác và hoạt động trên các phiên bản khác nhau của & nbsp; windows.

Như được hiển thị ở trên, các đường dẫn đến các tệp miniconda của chúng tôi được chôn khá sâu và phụ thuộc vào hồ sơ đã đăng nhập trong hồ sơ người dùng. Cố gắng mã cứng tất cả điều này sẽ có vấn đề. Nói chuyện một người dùng mới thông qua quy trình có thể là thách thức như & nbsp; tốt.

Để chứng minh Winshell, hãy để Lừa nhận nhập khẩu trong & nbsp; địa điểm:

import winshell
from pathlib import Path

Nếu chúng tôi muốn nhận thư mục hồ sơ người dùng, chúng tôi có thể sử dụng chức năng

profile = winshell.folder('profile')
3:

profile = winshell.folder('profile')

Trong đó tự động nhận ra rằng nó & nbsp; là:

Winshell cung cấp quyền truy cập vào nhiều thư mục khác nhau có thể được truy cập thông qua CSIDL của họ (danh sách ID đặc biệt không đổi). Dưới đây là danh sách CSIDLS để tham khảo. Một lưu ý phụ, có vẻ như CSIDL đã được thay thế bằng đã biết đến nhưng trong thử nghiệm hạn chế của tôi, các CSIDL mà tôi đã sử dụng trong bài viết này được hỗ trợ để trở lại & NBSP; Khả năng tương thích.CSIDL(Constant Special ID List). Here is a list of CSIDLs for reference. As a side note, it looks like the CSIDL has been replaced with KNOWNFOLDERID but in my limited testing, the CSIDLs I’m using in this article are supported for backwards compatibility.

Một trong những điều tôi thích làm là sử dụng pathlib để làm cho một số thao tác cần thiết dễ dàng hơn một chút. Trong ví dụ trên, biến

profile = winshell.folder('profile')
4 là một chuỗi. Tôi có thể chuyển chuỗi đến
profile = winshell.folder('profile')
5, điều này sẽ giúp các hoạt động tiếp theo dễ dàng hơn khi xây dựng các đường dẫn của chúng tôi.

Hãy để minh họa bằng cách lấy đường dẫn đầy đủ đến máy tính để bàn của tôi bằng cách sử dụng chức năng tiện lợi có sẵn cho Desktop & NBSP; thư mục:

desktop = Path(winshell.desktop())

Trông như thế này & nbsp; bây giờ:

WindowsPath('C:/Users/CMoffitt/OneDrive-Desktop')

Chúng ta có thể kết hợp các phương pháp thư mục này để có được một vị trí của thư mục cơ sở miniconda & nbsp;

miniconda_base = Path(winshell.folder('CSIDL_LOCAL_APPDATA')) / 'Continuum' / 'miniconda3')

Nếu chúng tôi muốn xác thực rằng đây là một thư mục hợp lệ & nbsp;

Trong opionion của tôi, điều này sạch hơn nhiều so với việc cố gắng thực hiện nhiều

profile = winshell.folder('profile')
6 để xây dựng Cấu trúc thư mục & NBSP;

Vị trí khác chúng ta cần là

profile = winshell.folder('profile')
7 mà chúng ta có thể nhận được với
profile = winshell.folder('profile')
8.

win32_cmd = str(Path(winshell.folder('CSIDL_SYSTEM')) / 'cmd.exe')

Bạn sẽ nhận thấy rằng tôi đã chuyển đổi đường dẫn thành một chuỗi bằng cách sử dụng

profile = winshell.folder('profile')
9. Tôi đã làm điều này bởi vì Winshell hy vọng tất cả các đầu vào của nó sẽ là chuỗi. Nó không biết cách xử lý trực tiếp một đối tượng pathlib. Điều này rất quan trọng để ghi nhớ khi tạo phím tắt thực tế trong mã & nbsp; bên dưới.

Làm việc với & nbsp; phím tắt

Khi làm việc với các phím tắt trên Windows, bạn có thể nhấp chuột phải vào biểu tượng phím tắt và xem các thuộc tính. Hầu hết mọi người có thể đã nhìn thấy một cái gì đó như & nbsp; điều này:

Hướng dẫn how do you create a shortcut in python? - làm thế nào để bạn tạo một phím tắt trong python?

Khi bạn nhận được các chuỗi lệnh thực sự dài, có thể khó xem trong GUI. Chỉnh sửa chúng cũng có thể có một chút thách thức khi đảm bảo các trích dẫn và ký tự thoát được sử dụng & NBSP; chính xác.GUI. Editing them can also get a little challenging when it comes to making sure quotes and escape characters are used correctly.

Winshell cung cấp chức năng

desktop = Path(winshell.desktop())
0 để làm cho các thuộc tính phím tắt thực tế dễ dàng hơn để & NBSP; đánh giá.

Ví dụ: nếu chúng ta muốn xem lối tắt hiện có trong menu Bắt đầu, chúng ta cần đưa đường dẫn đầy đủ đến tệp

desktop = Path(winshell.desktop())
1, sau đó tạo một đối tượng phím tắt và hiển thị các giá trị bằng cách sử dụng
desktop = Path(winshell.desktop())
0.

lnk = Path(winshell.programs()) / "Anaconda3 (64-bit)" / "Anaconda Prompt (miniconda3).lnk"
shortcut = winshell.shortcut(str(lnk))
shortcut.dump()

{
C:\Users\CMoffitt\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)\Anaconda Prompt (miniconda3).lnk -> C:\Windows\System32\cmd.exe

arguments: "/K" C:\Users\CMoffitt\AppData\Local\Continuum\miniconda3\Scripts\activate.bat C:\Users\CMoffitt\AppData\Local\Continuum\miniconda3
description: Anaconda Prompt (miniconda3)
hotkey: 0
icon_location: ('C:\\Users\\CMoffitt\\AppData\\Local\\Continuum\\miniconda3\\Menu\\Iconleak-Atrous-Console.ico', 0)
path: C:\Windows\System32\cmd.exe
show_cmd: normal
working_directory: %HOMEPATH%
}

Đây là một đại diện đơn giản của tất cả các thông tin chúng ta cần sử dụng để tạo liên kết phím tắt mới. Theo kinh nghiệm của tôi, quan điểm này có thể giúp việc hiểu cách tạo của bạn trở nên dễ dàng hơn nhiều.

Bây giờ chúng tôi biết thông tin chúng tôi cần, chúng tôi có thể tạo riêng & NBSP; phím tắt.

Chúng tôi sẽ tạo chuỗi đối số đầy đủ của chúng tôi bao gồm

profile = winshell.folder('profile')
1 theo sau là
import winshell
from pathlib import Path
4 sau đó môi trường chúng tôi muốn bắt đầu & nbsp; trong:

arg_str = "/K " + str(miniconda_base / "Scripts" / "activate.bat") + " " + str(miniconda_base / "envs" / "work")

Chúng tôi cũng có tùy chọn truyền trong một biểu tượng cần bao gồm một đường dẫn đầy đủ cũng như chỉ mục cho biểu tượng & nbsp;

Trong ví dụ này, tôi đã sử dụng biểu tượng mặc định mà Miniconda sử dụng. Hãy tự do sửa đổi cho việc sử dụng của riêng bạn & NBSP.

import winshell
from pathlib import Path
0

Phần cuối cùng là bắt đầu trong một thư mục làm việc & NBSP;

Trong trường hợp của tôi, tôi có một thư mục

desktop = Path(winshell.desktop())
5 chứa tất cả mã python của tôi. Chúng tôi có thể sử dụng
desktop = Path(winshell.desktop())
6 để truy cập các tài liệu của tôi và xây dựng đường dẫn đầy đủ đến
desktop = Path(winshell.desktop())
7.

import winshell
from pathlib import Path
1

Bây giờ tất cả các biến được xác định, chúng tôi tạo một liên kết phím tắt trên & nbsp; máy tính để bàn:

import winshell
from pathlib import Path
2

Bây giờ bạn sẽ thấy một cái gì đó như thế này trên & nbsp; máy tính để bàn:

Hướng dẫn how do you create a shortcut in python? - làm thế nào để bạn tạo một phím tắt trong python?

Bạn có thể dễ dàng tùy chỉnh nó để sử dụng thư mục và môi trường của riêng bạn. Nó có một chút mã ngắn nhưng theo tôi, nó dễ hiểu và tùy chỉnh hơn nhiều so với việc xử lý các tệp phím tắt Windows bởi & NBSP; Hand.

Bản tóm tắt

Dưới đây là ví dụ đầy đủ cho việc tạo một phím tắt đơn giản trên máy tính để bàn của bạn kích hoạt môi trường conda hoạt động và bắt đầu trong một thư mục làm việc cụ thể & NBSP;

import winshell
from pathlib import Path
3

Tôi hy vọng tập lệnh này sẽ giúp bạn tiết kiệm một chút thời gian khi bạn đang cố gắng thiết lập hệ thống Windows của mình để chạy các môi trường chung cư khác nhau. Nếu bạn có bất kỳ mẹo yêu thích nào khác mà bạn sử dụng, hãy cho tôi biết trong & nbsp; nhận xét.

Làm thế nào để bạn sử dụng các phím tắt trong Python?

Cách tiếp cận được sử dụng:..
Chúng tôi nhập bàn phím từ pynput ..
Sau đó, chúng tôi tạo một bộ để theo dõi các đầu vào khóa nào hiện đang được nhấn ..
Tạo một danh sách cần nhấn phím nóng để thực hiện thao tác mong muốn.....
Chúng tôi tạo một hàm thực thi () chạy chương trình mong muốn của chúng tôi trong khi nhấn phím nóng ..

Làm cách nào để tạo một hộp phím tắt?

Tạo các phím tắt..
Sử dụng hộp trong tệp Explorer, điều hướng đến thư mục hoặc tệp bạn muốn tạo phím tắt cho ..
Nhấp trái vào câu hỏi/thư mục trong câu hỏi để hiển thị menu ..
Tìm tùy chọn Gửi đến và di chuột qua để hiển thị menu bên của nó ..
Nhấp chuột phải vào tùy chọn Desktop (Tạo phím tắt) để tạo máy tính để bàn ..

Một lối tắt trong lập trình là gì?

1. Phím tắt là một dạng viết tắt của phím tắt.2. Trong Microsoft Windows, phím tắt là một liên kết trỏ đến chương trình máy tính.Các phím tắt cho phép bạn tạo liên kết đến các chương trình trong bất kỳ thư mục, thanh khởi động, thanh tác vụ, máy tính để bàn hoặc các vị trí khác trên máy tính.an abbreviated form of a keyboard shortcut. 2. In Microsoft Windows, a shortcut is a link that points to a computer program. Shortcuts allow you to create links to programs in any folder, Start bar, Taskbar, desktop, or other locations on the computer.