【Linux/Ubuntu】Linux/Ubuntu运行python脚本

简介: 【Linux/Ubuntu】Linux/Ubuntu运行python脚本

第一步:查看系统是否有python3

打开终端,输入:

python3

如果有python,会出现以下信息:

lcl@ubuntu:~$ python3

Python 3.6.9 (default, Mar 15 2022, 13:55:28)

[GCC 8.4.0] on linux

Type “help”, “copyright”, “credits” or “license” for more information.

第二步:编写python脚本

特别注意:python脚本的首行应加上如下代码:

#!/usr/bin/python

如果python中有中文,在代码中应加如下代码:

# -*- coding: utf-8 -*-

第三步:运行python脚本

cd到自己python脚本的目录下,然后 ./xxx.py 执行自己的脚本

cd textlicense/
./LicenseCheck.py

注意:如果你的脚本是在windows下编写的,移动到Linux下,可能出现如下报错。

lcl@ubuntu:~$ cd textlicense/

lcl@ubuntu:~/textlicense$ ./LicenseCheck.py

bash: ./LicenseCheck.py: /usr/bin/python^M: bad interpreter: No such file or directory

问题解决:问题一

如果出现 bash: ./LicenseCheck.py: /usr/bin/python^M: bad interpreter: No such file or directory,说明当前脚本的属性是DOS,只有在Windows下可用,在Linux下不可用。

因此,如果需要在linux使用,需要将DOC格式转换为UNIX格式。

具体操作如下:

(1)终端中打开要运行的python文件

vi LicenseCheck.py

(2)输入如下命令查看文件格式

:set ff 或 :set fileformat

(3)文档编辑器下面会出现

fileformat=dos 或 fileformat=unix

注意:fileformat=dos 说明,该文件只能在windows下运行,在linux下运行需要转换为unix格式(见(4))

(4)将文件格式修改为unix格式

:set ff=unix 或 :set fileformat=unix

(5)保存退出

:wq

(6)在运行python脚本

问题解决:问题二

运行脚本时,出现TypeError: ‘encoding’ is an invalid keyword argument for this function的报错,错误原因:

def logfile(self, text):
        with open('LicenseChecked.log', 'a+', encoding='utf-8') as f:
            t = time.strftime('%y-%m-%d %H:%M:%S')
            text = t + " " + text + '\n'
            f.write(text)
        f.close()
        return text

需要导入io模块,并且需要将:

(1)with open(‘LicenseChecked.log’, ‘a+’, encoding=‘utf-8’) as f:改为 with io.open(‘LicenseChecked.log’, ‘a+’, encoding=‘utf-8’) as f:

(2)f.write(text) 改为 f.write(text.decode(“utf-8”))

修改后如下所示:

import io
    def logfile(self, text):
        with io.open('LicenseChecked.log', 'a+', encoding='utf-8') as f:
            t = time.strftime('%y-%m-%d %H:%M:%S')
            text = t + " " + text + '\n'
            f.write(text.decode("utf-8"))
        f.close()
        return text

ps:我也不知道,为什么装的python3,但是,执行却是按照python2的规则。

问题解决:问题三

运行执行脚本时出现:TypeError: write() argument 1 must be unicode, not str 报错,需要将:

f.write(text) 改为 f.write(text.decode(“utf-8”))

【 详 情 参 见 问 题 二 】

以上就是python脚本在Linux中运行的步骤,如果喜欢,点个关注再走吧!!!!

相关文章
|
7月前
|
Ubuntu Linux UED
Ubuntu和Debian系统与Hat Linux系列的使用比较
所以,如果你想搞一个家用服务器,或者是个人使用,喜欢新鲜事物,那Ubuntu可能是你的最好选择。如果你需要一个在商业环境中经受住考验的系统,那Fedora或CentOS可能更符合你的口味。不过记住,CentOS现在是CentOS Stream,中途换马了,所以如果你是稳定性的极端追求者,可能得考虑一下这一变化。而Debian,则适合那些对稳定性需求极高,不太追求软件版本新旧的用户。
223 26
|
7月前
|
Ubuntu 搜索推荐 Linux
Ubuntu/Debian Hat系Linux的便捷操作指南
总的来说,虽然Ubuntu/Debian和Red Hat系列在操作方法上有所不同,但基本概念类似。掌握了包管理和服务管理,可以应对大多数常见的系统管理任务。同时,这两个系统都有丰富的在线资源可以查询,不管你在任务中遇到什么困难,搜索引擎都能帮你找到答案。这些基本技能能让你在Linux的世界里更加自如。
224 26
|
7月前
|
Ubuntu Linux Shell
Linux环境下VSCode快速安装终极指南:debian/ubuntu/linux平台通用
以上就是在Linux环境下安装VSCode的终极指南,抛开繁复的专业词汇,以平易近人的文字、形象生动的比喻让你轻松学会这一过程。别忘了,你的小伙伴VSCode已经在应用菜单里等你了!
2044 23
|
8月前
|
监控 Ubuntu Linux
在Ubuntu环境中制定脚本开机自动启动设置
以上就是在Ubuntu环境下制定脚本开机自动启动的设置方法。通过Systemd服务,你可以按需要轻松管理脚本的自动执行。全新的一天开始时,脚本已静静地运行,无需额外手动启动,机器恰如一位忠诚的仲夏夜的梦想者,在黎明的许诺中尽职尽责。于是心满意足地看着,任由它在自己选择的轨道上静静地飞翔。
893 26
|
9月前
|
前端开发 JavaScript 关系型数据库
基于python的租房网站-房屋出租租赁系统(python+django+vue)源码+运行
该项目是基于python/django/vue开发的房屋租赁系统/租房平台,作为本学期的课程作业作品。欢迎大家提出宝贵建议。
321 6
|
9月前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的美容预约管理系统源码+运行
基于Python+Vue开发的美容预约管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的美容诊所预约管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
152 9
|
9月前
|
JavaScript 前端开发 关系型数据库
基于Python+Vue开发的体育场馆预约管理系统源码+运行
本项目为大学生课程设计作业,采用Python和Vue技术构建了一个体育场馆预约管理系统(实现前后端分离)。系统的主要目标在于帮助学生理解和掌握Python编程知识,同时培养其项目规划和开发能力。参与该项目的学习过程,学生能够在实际操作中锻炼技能,为未来的职业发展奠定良好的基础。
221 3
|
9月前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的摄影网上预约管理系统源码+运行
基于Python+Vue开发的摄影网上预约管理系统(前后端分离),影楼婚纱摄影,这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的在线摄影预约管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
171 8
|
9月前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的民宿客房预订管理系统源码运行
基于Python+Vue开发的民宿客房预订管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的民宿客房预订管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
214 8
|
9月前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的新闻管理系统源码+运行
基于Python+Vue开发的新闻管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的新闻管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
213 5