用惯了windows和图形化界面的大家,或多或少对命令行有些抵触,有没有好的解决方案呢?先看看在Termux上写Python是种怎样的体验吧。
一、Python shell交互模式体验
在命令行中输入python按回车即可进入python原生的交互模式。
交互模式以 >>> 开头,用户可以直接输入代码,回车后程序执行代码,如:
退出交互模式可输入
exit()
或
quit()
交互模式可以一行行执行代码,也可以直接粘贴代码块,不过需要注意缩进。
体验了一段时间之后,发现确实不适合长时间写代码,总结缺点如下:
1.黑底白字很刺眼,长时间看容易眼疲劳,伤眼(颜色可以修改,以后会介绍);
2.操作不易:
我们可以通过右滑屏幕左边呼出Termux的功能菜单,里面只有KEYBOARD和NEW SESSION两个功能和会话列表,长按KEYBOARD可以呼出隐藏的功能键盘,包含手机软键盘没有的功能键,比如tab、ctrl、shift、tab等,还有三种常用的线,如下图:
如此这般操作起来就很难受了,比如你输入了很长一串语句,突然发现前面的部分需要修改,你就得按住ctrl和b键,修改完之后,又得ctrl加f往后移动光标,大概修改了几次之后耐心就会被消磨的差不多了。
好在Termux提供了一个输入框,功能键盘向左滑动就可以看到,在这里面就可以通过点击来定位光标,不过输入框为单行,依然很不方便。
3.代码管理不方便,文件操作复杂,这两点就不说了,用过自然知道。
二、Jupyter的使用方法
那么有没有什么好的方案呢?当然是有的,下面给大家隆重介绍上一篇中提过的一个模块——Jupyter,先看看效果怎么样。
看见没!甚至可以画图!
如果依照上篇中的步骤操作的话,执行完
LDFLAGS=“-lm -lcompiler_rt” pip install jupyter
这条语句之后,你就已经成功安装Jupyter了,下面介绍使用方法。
执行语句:
jupyter notebook -ip 0.0.0.0
看到上面的输出就代表已经成功搭建好基于网页的开发环境,第一次运行时,网址后会有一串token,用于验证身份,我们不用管,直接将整个网址复制进浏览器中,如果还要求输入token,可以按照提示把token手动复制进网页,接下来你可以设置密码,以后再次进入就不需要再验证了。
以上是理想情况,我在手机上登录该网页时就碰到了这种情况。
原因还未知,暂且认为本机在解析这个地址时出现问题了吧,那问题怎么解决呢?
接着我想到了一个解决方案,不仅能解决这个问题,还可以把我们用于编程的设备变得更顺手!
思路就是把安装了Jupyter的手机和其他设备(比如平板电脑)置于同一局域网中,然后通过该设备访问该页面。
置于同一局域网可以通过连接同一路由器,或者用手机开启无线网络热点,其他设备接入该网络。我以手机开热点为例。
完成后,在命令行输入ifconfig查看手机IP地址,不过输出挺多看着挺烦,简单点就是在平板上的设置里查看Wi-Fi的信息:
其中的路由器地址就是手机在局域网中的IP地址,如果是连接的同一个路由器的情况,则可以通过在手机端查看Wi-Fi设置,找到本机IP地址。
接下来在平板的浏览器中输入:
http://手机的IP地址:8888/
比如
http://192.168.43.1:8888/
接下来就成功进入网页了,为加上token的话需要按照要求填入,然后设置密码,接下来就可以舒服地写代码了!
Jupyter分为三个部分,一个是文件管理(可以上传文件),一个是正在运行,包括正在运行的终端和记事本,还有一个用于启用和设置运算集群的引擎数,我们暂时用不到(其实我也不会用QAQ)。
接下来我们新建一个Python3,可以看到如下界面,接下来我们就可以像在各种现代化的(雾)IDE里面一样编程啦,可以正常换行,每个输入框可以放置若干行代码,一般一个整体放在一起,看个人喜好了,点击run可以运行该部分代码,还可以终止或者重启内核,大家可以自行摸索,总之用起来舒服多啦!
举个例子:
为什么又是Hello world!难道作者你只会这个吗???
你不懂,我试试新的开发环境就是喜欢Hello world!
这个系列只负责介绍,高级一点的可以以后再交流嘛,只要你有想法和思路,以后有意思的事可多了,比如这个:
你怕不怕?