使用 Xcode 运行 python等脚本语言(perl, ruby)

在这里插入图片描述



运行 python

根据 https://www.jianshu.com/p/128d56b2a3f2 改编

基于 Xcode 12.2, macOS 10.15.7


一、创建/运行 python 工程


1、创建工程

Other – External Build System

在这里插入图片描述


2、填写 project 信息

Build Tool 默认为 /usr/bin/make
我这里使用 anaconda 的 python 环境 ~/opt/anaconda3/bin/python
创建后在工程中可以修改,所以选错了没关系。
创建简单的工程,这里的 tool 目前没看出作用,需要进一步探索。

在这里插入图片描述


3、点击 Next 会生成如下工程:

如果上一步 Build Tool 输错了,也可以在target – info 里修改

在这里插入图片描述


4、创建 main.py

编写简单的打印脚本:

print('hi, xcode py!')

5、Edit Scheme – Executable

在这里插入图片描述


修改 Executable 为 /usr/bin/python
(也可选其他 python,为避免挫败感,你可以先选这个作为测试;后面会讲到基于 venv 的 python)

点击 other,就可以选择文件;
选择文件时,使用快捷键 Command + Shift + G 可以进入文件夹搜索窗。

在这里插入图片描述


6、Edit Scheme – Arguments Passed On Launch
输入 并 勾选刚创建的 main.py 即可;

在这里插入图片描述


有些教程中建议输入地址 :$(SRCROOT)/main.py
我这样做后会报如下错误:

/Applications/Xcode.app/Contents/Developer/usr/bin/python3: can’t open file ‘$(SRCROOT)/main.py’: [Errno 2] No such file or directory

Program ended with exit code: 2


7、运行应用

点击 Command + R 即可运行
在这里插入图片描述


二、选择 python 的问题


1、which python
有的教程中会说,可以通过下属命令来找到本机当前运行的python,来作为 Execuatable;
我得到如下路径后,这个 python 显示为灰色,无法选中

$ which python
/usr/local/bin/python

2、anaconda python
想选择一般常用的 ~/opt/anaconda3/bin/python,同样为灰色,无法选中;
同文件夹目录下有个 python.app,可以选中,但运行后会报错如下:

Found an unexpected Mach-O header code: 0x622f2123
在这里插入图片描述


在使用 pycharm 时,我们创建 environment,是选择venv 的location;
这样也才能加载这个 venv 对应的第三方包信息(在上述工程中,我们如果引入 numpy,会报错)
所以如果选择 venv 中的 python,效果如何呢?
下面进行了尝试,确实可以。

在这里插入图片描述


三、基于虚拟环境 venv


1、创建 venv

$ cd ~/Desktop/002

# 基于 anaconda 的python 创建名为 venv1 的虚拟环境
$ virtualenv --no-site-packages -p ~/opt/anaconda3/bin/python venv1  

# 进入虚拟环境
$ source ~/opt/anaconda3/bin/activate 

# 安装 numpy
(base) $ pip install numpy
...

# 退出虚拟环境
(base) $ conda deactivate  
$

2、返回 xcode, Executable 中选择 /Desktop/002/venv/bin/python

引入 numpy,编写相关代码,可以跑通。

import numpy as np

print('hi, xcode py!')

a = np.arange(8)
print ('原始数组:', a)

在这里插入图片描述


运行其他脚本语言

只需要找到脚本语言解释器的路径,然后在 Executable 中选择这个路径即可,比如:

$ which perl
/usr/bin/perl

$ which ruby
/usr/bin/ruby

$ which bash
/bin/bash

$ which zsh
/bin/zsh



伊织 2021-06-01 儿童节快乐

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

伊织Scope

请我喝杯伯爵奶茶~!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值