0

0

Python命令如何在终端运行单个Python脚本 Python命令执行脚本的基础用法

星夢妙者

星夢妙者

发布时间:2025-08-18 22:15:01

|

1184人浏览过

|

来源于php中文网

原创

要运行python脚本,首先确保python已安装并加入path,然后在终端输入python或python3加上脚本路径,如python3 my_script.py;若遇“command not found”错误,需检查python是否安装或path配置是否正确,而“no such file or directory”则通常因文件路径或名称错误导致;为直接执行脚本,需在文件首行添加#!/usr/bin/env python3,并通过chmod +x赋予执行权限,随后可用./my_script.py运行;若需传递参数,可通过sys.argv获取命令行输入,实现动态控制脚本行为,最终确保脚本可被正确调用并响应外部输入。

Python命令如何在终端运行单个Python脚本 Python命令执行脚本的基础用法

在终端运行一个Python脚本其实非常直接:你通常只需要输入

python
命令,后面跟着你的脚本文件名。这就像告诉你的电脑,“嘿,用Python解释器来跑这个文件!”

解决方案

最基础的执行方式是打开你的终端(命令行界面),然后导航到你的Python脚本所在的目录。假设你的脚本叫做

my_script.py
,并且它位于当前目录下,你就可以这样运行它:

python my_script.py

如果你系统上安装了多个Python版本,比如Python 2和Python 3,你可能需要明确指定使用哪个版本来运行。通常,

python
可能指向Python 2,而
python3
则指向Python 3。为了确保使用Python 3,你可以这样:

立即学习Python免费学习笔记(深入)”;

python3 my_script.py

如果你的脚本不在当前目录,你需要提供它的完整路径,无论是相对路径还是绝对路径。比如,如果

my_script.py
在你的用户主目录下的
scripts
文件夹里:

# 相对路径(假设你当前在主目录)
python scripts/my_script.py

# 绝对路径
python /home/your_username/scripts/my_script.py

还有一种更“Unix-like”的运行方式,就是让脚本本身变得可执行。这需要两步:首先,在脚本文件的第一行添加一个特殊的“shebang”行,告诉系统用哪个解释器来执行这个文件。例如:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

print("Hello from an executable script!")

这里

#!/usr/bin/env python3
的意思是“使用环境变量中找到的
python3
来执行我”。这比直接写
/usr/bin/python3
更具可移植性,因为
python3
的实际安装路径可能因系统而异。

第二步是给脚本添加执行权限:

chmod +x my_script.py

完成这两步后,你就可以直接运行脚本,而不需要前面加上

python
python3
了:

./my_script.py

这里的

./
表示“当前目录”,这是为了告诉终端在当前目录寻找并执行这个文件,以防系统在
PATH
环境变量中找不到它。

为什么我的终端提示“python: command not found”或“No such file or directory”?

这两种错误是新手最常遇到的,但背后的原因其实很直白。

当你看到

python: command not found
(或者
python3: command not found
),这通常意味着你的操作系统在它默认寻找可执行程序的路径(也就是你的
PATH
环境变量)中,没有找到名为
python
python3
的程序。简单来说,你的电脑不知道
python
这个命令是什么。这可能有几个原因:

  1. Python根本没安装:这是最直接的原因。你需要去Python官方网站下载并安装对应你操作系统的Python版本。
  2. Python安装了,但不在PATH里:有时候Python安装程序不会自动把它的执行路径添加到系统的
    PATH
    环境变量中。或者你可能手动安装了Python,但忘记了这一步。你需要手动编辑你的shell配置文件(比如Linux/macOS上的
    ~/.bashrc
    ~/.zshrc
    ,Windows上的系统环境变量),把Python的安装路径(例如
    /usr/local/bin
    C:\Python39
    )加进去。
  3. 你正在使用一个隔离的环境:比如你可能在使用
    conda
    venv
    创建的虚拟环境,但这个环境没有被激活,所以系统找不到这个环境里的Python。

至于

No such file or directory
,这个错误则表示你的终端找不到你指定要运行的脚本文件。这通常是因为:

如此AI员工
如此AI员工

国内首个全链路营销获客AI Agent

下载
  1. 文件名打错了:最常见的情况,检查你的脚本文件名是否拼写正确,包括大小写(在Linux和macOS上,文件名是区分大小写的)。
  2. 你不在脚本所在的目录:你可能在终端的A目录,但你的脚本在B目录。你需要使用
    cd
    命令切换到脚本所在的目录,例如
    cd /path/to/your/script/folder
  3. 提供的路径不正确:如果你尝试使用相对路径或绝对路径来运行脚本,但路径本身有误,也会出现这个错误。你可以用
    ls
    命令(Linux/macOS)或
    dir
    命令(Windows)来列出当前目录的文件,确认脚本文件确实在那里,或者用
    pwd
    命令确认你当前所在的目录。

如何确保我的Python脚本能被直接执行,而不用每次都输入
python

要实现这一点,核心就是前面提到的“shebang”行和文件执行权限。这是一种非常方便的做法,特别是当你有一些工具脚本,希望它们能像普通命令一样被调用时。

首先,在你的Python脚本文件的第一行,添加如下内容:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# 这是一个可以直接执行的Python脚本示例

import sys

if __name__ == "__main__":
    print(f"脚本名称: {sys.argv[0]}")
    if len(sys.argv) > 1:
        print(f"你传递了参数: {sys.argv[1:]}")
    else:
        print("没有传递任何参数。")

这里

#!/usr/bin/env python3
是关键。它告诉你的操作系统,当有人尝试执行这个文件时,应该去找
PATH
环境变量里叫做
python3
的程序来解释执行它。使用
env
的好处是,它会查找系统
PATH
中第一个
python3
,而不是硬编码一个固定的路径,这让你的脚本在不同系统上更具兼容性。

其次,你需要给这个文件添加执行权限。在终端中,导航到你的脚本所在的目录,然后运行:

chmod +x your_script.py

chmod +x
命令就是给文件添加“可执行”的权限。一旦这个权限被设置,你的操作系统就知道这个文件不仅仅是一个文本文件,它还是一个可以运行的程序。

现在,你就可以像运行任何其他命令一样,直接运行你的脚本了:

./your_script.py

如果你把这个脚本放在了你的

PATH
环境变量所包含的某个目录里(比如
/usr/local/bin
或者你自己的一个自定义bin目录),你甚至不需要
./
,可以直接输入脚本名来运行,就像
ls
grep
一样。这对于构建自己的命令行工具非常有用。

运行Python脚本时,如何向它传递额外的参数?

在终端运行Python脚本时,你经常需要向它传递一些额外的信息,比如一个文件名、一个配置选项或者一个数字。这些信息被称为“命令行参数”。Python通过内置的

sys
模块来获取这些参数。

sys
模块提供了一个名为
argv
的列表(
sys.argv
),它包含了所有传递给脚本的命令行参数。这个列表的第一个元素,即
sys.argv[0]
,总是脚本本身的名称。从
sys.argv[1]
开始,才是你真正传递给脚本的参数。

我们来看一个简单的例子。假设你有一个脚本叫

process_file.py
,你希望它能接受一个文件名作为输入:

# process_file.py
import sys

# 检查是否提供了足够的参数
if len(sys.argv) < 2:
    print("用法: python process_file.py <文件名>")
    sys.exit(1) # 退出脚本并返回错误码

file_name = sys.argv[1] # 第一个参数就是文件名
print(f"你请求处理的文件是: {file_name}")

try:
    with open(file_name, 'r', encoding='utf-8') as f:
        content = f.read()
        print("\n--- 文件内容开始 ---")
        print(content[:100]) # 只打印前100个字符
        print("--- 文件内容结束 ---\n")
except FileNotFoundError:
    print(f"错误: 文件 '{file_name}' 未找到。")
except Exception as e:
    print(f"处理文件时发生错误: {e}")

# 你可以传递更多参数
if len(sys.argv) > 2:
    print(f"其他参数: {sys.argv[2:]}")

现在,你可以在终端中这样运行它,并传递一个文件名:

python process_file.py my_document.txt

如果

my_document.txt
存在,脚本就会尝试读取并打印它的部分内容。如果你再加一些参数:

python process_file.py another_file.csv --verbose debug

在脚本内部,

sys.argv
会是这样的:
['process_file.py', 'another_file.csv', '--verbose', 'debug']

通过这种方式,你的Python脚本就可以根据用户在终端输入的指令来动态调整其行为,这让脚本变得非常灵活和强大。对于更复杂的命令行参数解析(比如带短选项

-v
、长选项
--verbose
、子命令等),Python社区通常会推荐使用
argparse
模块,它能让你以更结构化的方式定义和解析这些参数,但对于基础用法,
sys.argv
已经足够了。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

1335

2023.07.26

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1156

2023.07.27

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

825

2023.08.01

windows查看端口被占用的情况
windows查看端口被占用的情况

windows查看端口被占用的情况的方法:1、使用Windows自带的资源监视器;2、使用命令提示符查看端口信息;3、使用任务管理器查看占用端口的进程。本专题为大家提供windows查看端口被占用的情况的相关的文章、下载、课程内容,供大家免费下载体验。

460

2023.08.02

windows无法访问共享电脑
windows无法访问共享电脑

在现代社会中,共享电脑是办公室和家庭的重要组成部分。然而,有时我们可能会遇到Windows无法访问共享电脑的问题。这个问题可能会导致数据无法共享,影响工作和生活的正常进行。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2361

2023.08.08

windows自动更新
windows自动更新

Windows操作系统的自动更新功能可以确保系统及时获取最新的补丁和安全更新,以提高系统的稳定性和安全性。然而,有时候我们可能希望暂时或永久地关闭Windows的自动更新功能。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

854

2023.08.10

windows boot manager
windows boot manager

windows boot manager无法开机的解决方法:1、系统文件损坏,使用Windows安装光盘或USB启动盘进入恢复环境,选择修复计算机,然后选择自动修复;2、引导顺序错误,进入恢复环境,选择命令提示符,输入命令"bootrec /fixboot"和"bootrec /fixmbr",然后重新启动计算机;3、硬件问题,使用硬盘检测工具进行扫描和修复;4、重装操作系统。本专题还提供其他解决

1902

2023.08.28

windows锁屏快捷键
windows锁屏快捷键

windows锁屏快捷键是Windows键+L、Ctrl+Alt+Del、Windows键+D、Windows键+P和Windows键+R。本专题为大家提供windows相关的文章、下载、课程内容,供大家免费下载体验。

1657

2023.08.30

Golang 测试体系与代码质量保障:工程级可靠性建设
Golang 测试体系与代码质量保障:工程级可靠性建设

Go语言测试体系与代码质量保障聚焦于构建工程级可靠性系统。本专题深入解析Go的测试工具链(如go test)、单元测试、集成测试及端到端测试实践,结合代码覆盖率分析、静态代码扫描(如go vet)和动态分析工具,建立全链路质量监控机制。通过自动化测试框架、持续集成(CI)流水线配置及代码审查规范,实现测试用例管理、缺陷追踪与质量门禁控制,确保代码健壮性与可维护性,为高可靠性工程系统提供质量保障。

6

2026.02.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 22.5万人学习

Django 教程
Django 教程

共28课时 | 4.6万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号