当前位置: 首页 > news >正文

⭐️Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解

  • Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解
    • 一、安装Python
    • 二、运行Python脚本
      • 1. 打开命令行
      • 2. 导航到目标目录
      • 3. 确认脚本
      • 4. 运行脚本
    • 三、交互式执行Python代码
      • 1. 打开命令行
      • 2. 输入`python`命令
      • 3. 执行代码
      • 4. 退出交互式解释器
      • 5. 常用的Python命令行选项
      • 6. 导入Python模块
      • 7. 编写和执行多行代码
    • 四、错误处理和调试
      • 1. 错误类型
      • 2. 捕获和处理异常
      • 3. 使用命令行工具进行调试
      • 4. 记录日志
      • 5. 编写可测试的代码
    • 五、注意事项
    • 总结

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解


Python作为一种广泛使用的编程语言,不仅可以在各种集成开发环境(IDE)中运行,还可以直接在命令行界面(CLI)中执行。Windows的命令行工具(Command Prompt)就是一个常用的平台,它允许用户直接运行Python脚本或进行交互式编程。





一、安装Python


要在Windows上运行Python脚本或交互式地执行Python代码,请确保您已经安装了Python。您可以从Python的官方网站(https://www.python.org/downloads/)下载并安装适合您操作系统的Python版本。在安装过程中,请务必选择“Add Python to PATH”选项(或在高级设置中明确指定将Python添加到系统环境变量中),以便在命令行中直接运行Python。完成安装后,您就可以在Windows命令行中运行Python脚本或交互式地执行Python代码了。





二、运行Python脚本


要在Windows命令行中运行Python脚本,首先确保已经正确安装了Python,并将其添加到了系统的环境变量中。这样,命令行就能够识别并执行Python命令。





1. 打开命令行


首先,按下Win+R键,输入cmd并回车,以打开Windows的命令行界面(Command Prompt)。

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解





2. 导航到目标目录


使用cd命令切换到包含Python脚本的目录。例如,如果脚本位于C:\Code,则在命令行中输入cd C:\Code并回车即可。

cd C:\Code

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解





3. 确认脚本


确认脚本文件名和扩展名。Python脚本通常以.py作为文件扩展名。

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解





4. 运行脚本


在命令行中,您可以通过输入python命令,紧接着指定您的脚本文件名,然后按下回车键来运行该脚本。这时,Python解释器会执行您指定的脚本。例如,如果您的脚本文件名为code.py,那么您应该输入python code.py来运行它。

python code.py

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解

命令行会执行脚本中的代码,并在完成后显示任何输出或错误消息。

通过以上步骤,你可以在Windows命令行中轻松地运行Python脚本或交互式地执行Python代码。无论是进行简单的代码测试还是执行复杂的脚本任务,Windows命令行都为你提供了一个方便、快捷的操作平台。





三、交互式执行Python代码


除了运行Python脚本,Windows命令行还支持用户以交互方式执行Python代码。这意味着,你可以直接在命令行中输入python命令并按下回车键。之后,在出现的>>>提示符下,你可以输入任何有效的Python代码,并按下回车键来执行它。例如:

python

然后你会看到类似以下的输出(版本号可能不同):

Python 3.x.x (default, ...) on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print("Hello, World!")
Hello, World!
>>>





1. 打开命令行


同样地,你需要先打开Windows命令行(Command Prompt)。

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解





2. 输入python命令


在命令行中,直接输入python并按下回车键,您将会启动Python的交互式解释器,同时屏幕上会显示一个提示符(通常是>>>),这标志着您已经进入了Python的交互式环境。

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解





3. 执行代码


在交互式解释器中,你可以在提示符下直接输入Python代码并按下回车键来执行它。例如,当你输入print("Hello, World!")并按下回车键后,你将在命令行中看到输出“Hello, World!”。这样,你可以实时地看到代码的执行结果。

print("Hello, World!")

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解





4. 退出交互式解释器


要退出交互式Python解释器,您可以选择两种方法。第一种方法是输入exit()并按下回车键。第二种方法是在Windows系统中按下Ctrl+Z组合键(之后可能需要再按下回车键),或在Unix/Linux系统中按下Ctrl+D组合键。您可以在解释器中继续输入并执行更多的Python代码,直到您选择上述任一方式来退出Python解释器。

exit()

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解

Ctrl+Z输出命令行:

 ^Z

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解

以上就是在Windows命令行中运行Python脚本或交互式地执行Python代码的详细步骤。通过这些步骤,你可以轻松地在命令行中运行Python代码,并进行各种Python编程任务。





以下是交互式补充说明:

5. 常用的Python命令行选项


在运行Python脚本或进入交互式解释器模式时,你可以使用一些命令行选项来控制Python的行为。例如:

  • -V--version:打印Python的版本信息。
  • -c cmd:执行Python代码,然后退出。
  • -m module-name:运行库模块作为脚本(在Python 3.4及以上版本中可用)。

例如:

python -V
python -c "print('Hello, Command Line!')"
python -m http.server 8000  # 在Python 3中启动一个简单的HTTP服务器





6. 导入Python模块

在Python的交互式解释器模式中,你可以使用import语句来导入并使用Python模块。例如,要导入math模块并使用其中的sqrt函数来计算平方根:

>>> import math
>>> math.sqrt(16)
4.0
>>>





7. 编写和执行多行代码

虽然Python的交互式解释器通常一次只执行一行代码,但你可以使用换行符(直接按回车键)来连续输入多行代码,只要这些代码在逻辑上是相关的。例如,定义一个函数并调用它:

>>> def greet(name):
...     print(f"Hello, {name}!")
...
>>> greet("World")
Hello, World!
>>>

另外,你还可以使用三引号('''""")来定义多行字符串或文档字符串(docstring),但这并不是执行多行代码的直接方式。如果你需要执行一个包含多行代码的脚本片段,最好将其保存为一个.py文件,并在命令行中运行该文件。





四、错误处理和调试

在运行Python脚本或交互式地执行代码时,难免会遇到错误。Python解释器会提供错误信息来帮助你定位问题。学会如何解读和处理这些错误信息对于编写健壮的Python代码至关重要。

1. 错误类型

Python中的错误主要分为两种类型:语法错误(SyntaxError)和异常(Exception)。

  • 语法错误通常是由于代码中的拼写错误、缺少标点符号或结构错误导致的。例如,忘记在if语句后面添加冒号(:)就会引发语法错误。

  • 异常是在代码执行过程中发生的运行时错误。例如,尝试除以零会引发ZeroDivisionError异常,而尝试访问不存在的字典键会引发KeyError异常。

2. 捕获和处理异常

在Python中,你可以使用try-except语句来捕获和处理异常。当try块中的代码引发异常时,控制流会立即跳转到相应的except块(如果提供了的话),并执行其中的代码。这允许你编写能够优雅地处理错误情况的代码。

>>> try:
...     result = 10 / 0
... except ZeroDivisionError:
...     print("Division by zero is not allowed.")
...
Division by zero is not allowed.
>>>

在上面的例子中,我们尝试执行一个除以零的操作,这会引发ZeroDivisionError异常。我们使用try-except语句捕获这个异常,并打印一条友好的错误消息。

3. 使用命令行工具进行调试

除了使用try-except语句来处理异常外,你还可以使用命令行工具来进行更复杂的调试任务。Python标准库中的pdb模块提供了一个强大的交互式源代码调试器,它允许你设置断点、单步执行代码、检查变量值等。

要在命令行中使用pdb调试器,你可以使用-m选项来运行它,并指定要调试的脚本文件名作为参数。例如:

python -m pdb my_script.py

这将在启动脚本之前进入pdb调试器的交互式界面。你可以使用调试器命令来设置断点、单步执行代码等。有关更多详细信息,请参阅pdb模块的官方文档。

4. 记录日志

除了使用调试器外,你还可以使用Python的日志记录(logging)模块来跟踪代码的执行情况。通过配置日志记录器(logger)、处理器(handler)和格式化器(formatter),你可以将有关代码执行的信息、警告和错误记录到文件、控制台或其他目的地。这有助于你在生产环境中监视和诊断问题。

5. 编写可测试的代码

编写可测试的代码是减少错误并提高代码质量的关键。通过编写单元测试、集成测试和功能测试等不同类型的测试,你可以确保代码的正确性并验证其是否符合预期的行为。Python的unittest模块提供了一个用于编写和运行单元测试的框架,而像pytestnose这样的第三方库则提供了更强大和灵活的测试功能。





五、注意事项


  • 确保Python解释器的路径已经添加到系统的环境变量中,这样你就可以在任何目录下直接运行python命令。
  • 如果你的系统同时安装了Python 2和Python 3,你可能需要使用python3命令来启动Python 3解释器。
  • 在运行脚本或执行代码时,注意检查任何语法错误或运行时错误,并根据错误消息进行调试。
  • 在运行脚本或执行代码时遇到错误,请仔细检查你的代码和路径是否正确,以及是否安装了所有必要的Python库。
  • 在Windows命令行中执行更复杂的Python任务,你可以考虑使用批处理文件(.bat)或PowerShell脚本来自动化你的工作流程。





总结


在Windows命令行中运行Python脚本或交互式地执行Python代码是学习和使用Python的重要部分。通过掌握如何安装Python、运行脚本、交互式地执行代码以及处理错误和调试代码等基本技能,你将能够更有效地编写和测试Python程序。同时,记住编写可测试的代码并使用日志记录来跟踪代码的执行情况也是提高代码质量和减少错误的关键。





相关文章:

⭐️Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解

Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解 Python在Windows命令行(Command Prompt)运行Python脚本或交互式地执行Python代码详解一、安装Python二、运行Python脚本1. 打开命令行2. 导航到…...

Python | Leetcode Python题解之第355题设计推特

题目: 题解: class Twitter:class Node:def __init__(self):self.followee set()self.tweet list()def __init__(self):self.time 0self.recentMax 10self.tweetTime dict()self.user dict()def postTweet(self, userId: int, tweetId: int) ->…...

D. Beard Graph

https://codeforces.com/problemset/problem/165/D 主要是边转点 后面都是简单的线段树维护 我们维护ok标记,val值,黑(1),白(0) id.okl.ok&r.ok id.vall.valr.val 注意特判如果两个点一样是0,如果dfn[u]1>dfn[v]就不…...

使用预训练的 ONNX 格式的 YOLOv8n 模型进行目标检测,并在图像上绘制检测结果

目录 __init__方法: pre_process方法: run方法: filter_boxes方法: view_img方法: ​​​​​​​__init__方法: 初始化类的实例时,创建一个onnxruntime的推理会话,加载名为yolo…...

mac安装xmind

文章目录 介绍软件功能下载安装1.下载完成后打开downloads 双击进行安装2.将软件拖到应用程序中3.在启动台中搜索打开4.提示损坏问题解决5.执行完成关闭命令窗口6.打开成功,点击继续,跳过登录7.打开成功后,点击关于 小结 介绍 XMind 是一款流…...

MySQL分区表入门

MySQL数据库的分区表是一种将表数据分成逻辑上相关的部分并存储在不同的物理位置的技术。使用分区表可以提高查询性能、简化数据维护和提供更好的数据管理。 以下是MySQL中创建和使用分区表的一般步骤: 设计分区策略: 首先,需要确定如何将表…...

StarRocks 存算分离数据回收原理

前言 StarRocks存算分离表中,垃圾回收是为了删除那些无用的历史版本数据,从而节约存储空间。考虑到对象存储按照存储容量收费,因此,节约存储空间对于降本增效尤为必要。 在系统运行过程中,有以下几种情况可能会需要删…...

【运维】Linux中的xargs指令如何使用?

xargs 是 Linux 中一个非常强大的命令,用于将标准输入中的输出作为参数传递给其他命令。通常情况下,xargs 用于处理长列表或者将多行输入转换成一行。 以下是 xargs 的基本用法和一些常见的例子: 基本语法 command | xargs [options] [command]常见的例子 删除文件:假设…...

日志审计-graylog ssh登录超过6次告警

Apt 设备通过UDP收集日志,在gray创建接收端口192.168.0.187:1514 1、ssh登录失败次数大于5次 ssh日志级别默认为INFO级别,通过系统rsyslog模块处理,日志默认存储在/var/log/auth.log。 将日志转发到graylog vim /etc/rsyslog.conf 文件末…...

4. kafka消息监控客户端工具

KafkaKing官网地址 : https://github.com/Bronya0/Kafka-King github下载地址 : Releases Bronya0/Kafka-King (github.com) (windows、macos、linux版本) 云盘下载地址 : https://pan.baidu.com/s/1dzxTPYBcNjCTSsLuHc1TZw?pwd276i (仅windows版本) 连接kafka 输入本地地址…...

鸿蒙环境和模拟器安装

下载华为开发者工具套件,并解压 https://developer.harmonyos.com/deveco-developer-suite/enabling/kit?currentPage1&pageSize10 双击dmg安装ide 复制并解压sdk 安装模拟器 https://yuque.antfin-inc.com/ainan.lsd/cm586u/po19k1mi9b2728da?singleDoc#…...

【图文并茂】ant design pro 如何对接后端个人信息接口

上一节我们有讲到如何对接登录接口的 【图文并茂】ant design pro 如何对接登录接口 仅仅能登录是最基本的,但是我们要进入后台还是需要另一个接口。 这个接口有两个作用: 来获取当前登录账号的信息,比如头像,用户名&#xff0…...

MySQL运维学习(1):4种日志

1.错误日志 mysql错误日志记录了mysql发生任何严重错误时的信息,若数据库无法正常使用时,可以先查看错误日志 默认情况下错误日志是开启的,文件名为/var/log/mysqld.log,如果文件不在默认位置,可以通过下面的命令查看…...

代码随想录算法训练营第二十天(二叉树 七)

day19 周日放假 今天依旧是二叉树环节 力扣题部分: 235. 二叉搜索树的最近公共祖先 题目链接:. - 力扣(LeetCode) 题面: 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T …...

Django 后端架构开发:通用表单视图、组件对接、验证机制和组件开发

🌟 Django 后端架构开发:通用表单视图、组件对接、验证机制和组件开发 🔹 django 通用表单视图 Django 的通用表单视图提供了快速创建和处理表单的功能,使得表单处理变得简洁而高效。以下示例展示了如何使用通用表单视图创建一个…...

Cookie和Session是什么?它们的区别是什么?

【知识】深入理解COOKIE&SESSION的原理和区别-腾讯云开发者社区-腾讯云 (tencent.com) Cookie和Session的区别(面试必备)_cookie和session的作用和区别-CSDN博客 Cookie和Session是什么?它们的区别是什么?_cookie里面的字符…...

Python正则表达式提取车牌号

在Python中使用正则表达式(Regular Expressions)来提取车牌号是一个常见的任务,尤其是在处理车辆信息或进行图像识别后的文本处理时。中国的车牌号格式多种多样,但通常包含省份简称、英文字母和数字。以下是一个使用Python正则表达…...

视觉引导机械臂学习记录

首先是几个位置,拍照位、示教位、目标位置。 流程主要是 1.首先选取一个拍照位,相机扫描点云,通过点云质量进行选取。并且制作点云模板,进行配准,如果配准分数高则模板选取正确。 2.用相机拍灰度图像,并…...

插屏广告在游戏APP中广告变现的独特优势

插屏广告是目前全球移动应用变现的主要广告形式之一,其优势在于可以快速收回成本,又能适应于多数缺乏激励场景的应用。 插屏广告通常在app使用过程中的自然过渡点,比如暂停场景切换的时候弹出,以图片、动图、视频等为表现形式的半…...

Python数据分析:数据可视化(Matplotlib、Seaborn)

数据可视化是数据分析中不可或缺的一部分,通过将数据以图形的方式展示出来,可以更直观地理解数据的分布和趋势。在Python中,Matplotlib和Seaborn是两个非常流行和强大的数据可视化库。本文将详细介绍这两个库的使用方法,并附上一个…...

Java CompletableFuture:你真的了解它吗?

文章目录 1 什么是 CompletableFuture?2 如何正确使用 CompletableFuture 对象?3 如何结合回调函数处理异步任务结果?4 如何组合并处理多个 CompletableFuture? 1 什么是 CompletableFuture? CompletableFuture 是 Ja…...

5个免费在线 AI 绘画网站推荐,附100+提示词!

在数字化时代,艺术创作与人工智能的结合已带来前所未有的创新体验。AI 绘画技术,基于先进的人工智能算法,为艺术创作提供了全新的视角和工具。当前,多个免费在线AI绘画平台应运而生,为创作者们提供了丰富的灵感和创作机…...

C++基础语法:while的使用

前言 "打牢基础,万事不愁" .C的基础语法的学习."学以致用,边学边用",编程是实践性很强的技术,在运用中理解,总结. 引入 while的使用是编写代码的基础内容.笔者的记忆力已不如以前,最近遇到了还花了不少功夫,可见是掌握地不够牢固.所以对while的思路和内容…...

鹏哥C语言自定义笔记重点(29-)

29.函数指针数组 30.void指针是不能直接解引用,也不能-整数。 void*是无具体类型的指针,可以接受任何类型的地址。 31.qsort:使用快速排序的思想实现一个排序函数(升序) 32. 33.地址的字节是4/8 34.char arr[]{a,b} sizeof(arr[0]1)答案是4&#xff0…...

代码随想录算法训练营第六十天 | dijkstra(堆优化版)、Bellman_ford 算法精讲

一、dijkstra(堆优化版) 题目连接:47. 参加科学大会(第六期模拟笔试) (kamacoder.com) 文章讲解:代码随想录 (programmercarl.com)——dijkstra(堆优化版) 二、Bellman_ford 算法精讲…...

boost::asio 库版本,C/C++代码编译兼容性

1、boost::asio::spawn 开启有栈(stackful)协同程序,版本改进及限制 > boost_1_80 版本应采用以下方式。 auto f [self, this](const boost::asio::yield_context& y) noexcept {bool success_ do_handshake(y);if (!success_) {clo…...

前端开发的项目导入方法与应用

前端项目启动问题归集: 由于前端的项目对于npm的版本有要求,需要将其升级到20,所以必要的时候通过nvm,或者直接下载最新的安装包进行npm覆盖安装。在项目目录中应用npm i安装node_modules,如果没有正常安装的话&#…...

C++:模拟实现string

前言&#xff1a; 为了更好的理解string底层的原理&#xff0c;我们将模拟实现string类中常用的函数接口。为了与std里的string进行区分&#xff0c;所以用命名空间来封装一个自己的strin类。 string.h #pragma once #define _CRT_SECURE_NO_WARNINGS 1#include<iostream&…...

浅谈Kafka(一)

浅谈Kafka&#xff08;一&#xff09; 文章目录 浅谈Kafka&#xff08;一&#xff09;Kafa的设计是什么样的数据传输的事务定义消息队列的应用场景Kafka怎么样判断节点是否存活Kafka的消息是采用pull模式还是push模式Kafka在磁盘上的消息格式Kafka高效文件存储设计特点Kafka与传…...

Redis7基础篇(八)

redis集群 是什么 能干吗 集群算法-分片-槽位slot redis集群的槽位slot redis集群的分片 分片和槽位的优势 槽位映射的解决方案 上面的三个方案分别对应了小厂 中厂 大厂 哈希槽取余分区 缺点 一致性哈希算法分区 小总结 哈希槽分区 经典面试题 这里说的redis是ap而不是cp的 …...