【问题标题】:How to quickly execute a python file on Mac如何在 Mac 上快速执行 python 文件
【发布时间】:2023-04-08 14:09:01
【问题描述】:

我是 Python 的初学者,今天我学习了一个可以使用 Google 地图搜索地点的新程序。这是代码:

import webbrowser, sys, pyperclip
if len(sys.argv) > 1:
    address = ' '.join(sys.argv[1:])
else:
    address = pyperclip.paste()

webbrowser.open('https://www.google.com/maps/place/' + address)

我的文件名是mapit.py,我真的很想知道我可以通过键入来执行,例如,

mapit New York

在根命令行而不是

Pycharm\......\pythoh3 mapit.py New York 

我尝试在 Spotlight 搜索中执行 mapit.py New York,但没有成功。

【问题讨论】:

  • 由于python安装目录包含在path环境变量中,需要在此之前添加python。

标签: python macos command


【解决方案1】:

我相信您想要实现的是在您的脚本中注册一个自定义命令,对吧?为此,您可以使用别名:

$ alias mapit="python3 ...\mapit.py"

把真正的路径放到mapit.py而不是'...\mapit.py'

然后你可以使用别名作为命令:

$ mapit "New York"

【讨论】:

  • 谢谢,不过,完成后,我运行 mapit "New York",它显示 zsh: permission denied: /Users/edward/PycharmProjects/Pratical_function/mapit.py。
  • 您需要更改文件的权限。使用 chmod 命令来完成。 $ chmod 754 /Users/edward/PycharmProjects/Pratical_function/mapit.py
【解决方案2】:

要简单地运行 Python 脚本,您可以调用 Python 并传递脚本

python mapit.py someargument "some argument with spaces"

或者您可以将正确的 Python shebang 添加到脚本顶部并启用 executable bit

#!/usr/bin/env python
import webbrowser, sys, pyperclip
some_code_here ...

如果你想让这更简单,你可以set up an aliasshow_me 或其他python /path/to/mapit.py。然后你可以简单地拨打show_me "New York"

附带说明,如果您调用 python /path/to/mapit.py New York,它会将 NewYork 解析为两个单独的参数。如果您希望它们成为一个单独的参数,则需要将它们用引号括起来:

python /path/to/mapit.py "New York"

【讨论】:

    猜你喜欢
    • 2015-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-10
    • 1970-01-01
    相关资源
    最近更新 更多