返回顶部
首页 > 资讯 > 后端开发 > Python >python实现按任意键继续执行程序
  • 319
分享到

python实现按任意键继续执行程序

程序python 2022-06-04 18:06:21 319人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

在windows下写bat的时候,通过pause命令,可以暂停程序运行,例如经常见的程序会在终端提示”按任意键继续……”,用户在终端回车后程序可以接着运行,这个功能有多大用途今天暂且不说,但我觉得应该有很多

windows下写bat的时候,通过pause命令,可以暂停程序运行,例如经常见的程序会在终端提示”按任意键继续……”,用户在终端回车后程序可以接着运行,这个功能有多大用途今天暂且不说,但我觉得应该有很多人也想在python下实现这个功能,这样当自己写的Python程序运行时, 突然给出这么一个提示,然后自己再来个帅气的回车,我觉得肯定给人一种非常专业的感觉,最起码自己肯定被自己迷倒了,所以今天我们就学习下这段代码,这里定义了一个函数,所以你可以嵌入到你的程序中,在任何你希望调用的地方调用它即可,使用非常的方便,代码如下:


#!/usr/bin/env python
# -*- coding:utf-8 -*-
import os
import sys
import termiOS
def press_any_key_exit(msg):
# 获取标准输入的描述符
fd = sys.stdin.fileno()
# 获取标准输入(终端)的设置
old_ttyinfo = termios.tcgetattr(fd)
# 配置终端
new_ttyinfo = old_ttyinfo[:]
# 使用非规范模式(索引3是c_lflag 也就是本地模式)
new_ttyinfo[3] &= ~termios.ICANON
# 关闭回显(输入不会被显示)
new_ttyinfo[3] &= ~termios.ECHO
# 输出信息
sys.stdout.write(msg)
sys.stdout.flush()
# 使设置生效
termios.tcsetattr(fd, termios.TCSANOW, new_ttyinfo)
# 从终端读取
os.read(fd, 7)
# 还原终端设置
termios.tcsetattr(fd, termios.TCSANOW, old_ttyinfo)
if __name__ == “__main__”:
press_any_key_exit(“按任意键继续…”)
print ‘n'

代码不多解释,看注释,这里要说一下termios模块,这个模块提供了一个接口可以控制tty终端的Io,它所有函数第一个参数需要一个文件描述符,可以是整型的文件描述符,也可以是个文件对象,因为它可以控制在终端的显示设置,常用场景就是用户在终端输入密码时不要显示出来,就跟我们用root登陆系统时系统给出输入密码提示符一样, 代码实现如下:


def getpass(prompt=”PassWord: “):
import termios, sys
fd = sys.stdin.fileno()
old = termios.tcgetattr(fd)
new = termios.tcgetattr(fd)
new[3] = new[3] & ~termios.ECHO
try:
termios.tcsetattr(fd, termios.TCSADRAIN, new)
passwd = raw_input(prompt)
finally:
termios.tcsetattr(fd, termios.TCSADRAIN, old)
return passwd
passwd = getpass()
print passwd

这个脚本运行会提示你输入密码,输入后会打印出刚输入的密码,给这个2个例子也是说明termios的简单用法,大家可以自己运行程序去体会下。

--结束END--

本文标题: python实现按任意键继续执行程序

本文链接: https://lsjlt.com/news/13851.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python实现按任意键继续执行程序
    在windows下写bat的时候,通过pause命令,可以暂停程序运行,例如经常见的程序会在终端提示”按任意键继续……”,用户在终端回车后程序可以接着运行,这个功能有多大用途今天暂且不说,但我觉得应该有很多...
    99+
    2022-06-04
    程序 python
  • Python 按任意键继续...(Win
    1、按回车键退出。#coding=utf-8 raw_input(unicode('按回车键退出...','utf-8').encode('gbk'))2、按任意键继续。import os os.system('paus...
    99+
    2023-01-31
    Python Win
  • 实现python版本的按任意键继续/退出
    某天在群内有同学问到,在python下我用input或者raw_input都得输入完后回车才能获取到输入的值,那如何实现任意键退出暂停等功能呢,我当时也没有多想,因为接触python时间也不算长,主要还是L...
    99+
    2022-06-04
    版本 python
  • 详解Python实现按任意键继续/退出的功能
    前言 要实现该功能,需要的就是暂停程序、等待并捕捉用户的一个键盘输入,然后继续执行。Python 有内建的库能帮我们实现该功能,不过要区别对待 Windows 和 Linux。 msvcrt 中的 getc...
    99+
    2022-06-04
    详解 功能 Python
  • python 如何实现跳过异常继续执行
    目录python如何跳过异常继续执行下面有两种解决方法拓展资料python错误之NameError原因解决办法python如何跳过异常继续执行 下面有两种解决方法 第一种是类似if&...
    99+
    2024-04-02
  • python怎么实现跳过异常继续执行
    这篇文章主要介绍“python怎么实现跳过异常继续执行”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python怎么实现跳过异常继续执行”文章能帮助大家解决问题。python如何跳过异常继续执行下面...
    99+
    2023-07-02
  • Linux 下 Python 实现按任意键退出的实现方法
    某天在群内有同学问到,在python下我用input或者raw_input都得输入完后回车才能获取到输入的值,那如何实现任意键退出暂停等功能呢,我当时也没有多想,因为接触python时间也不算长,主要还是L...
    99+
    2022-06-04
    方法 Linux Python
  • php怎么实现关闭浏览器继续执行
    在PHP中,一旦执行完成,就会将输出发送给浏览器,并且关闭与浏览器的连接。所以,不能直接实现关闭浏览器后继续执行PHP代码。 然而,...
    99+
    2023-10-27
    php
  • Linux怎么在任意终端运行可执行程序
    这篇文章主要讲解了“Linux怎么在任意终端运行可执行程序”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux怎么在任意终端运行可执行程序”吧!操作方法:1.将编译好的可执行程序移动/复...
    99+
    2023-06-28
  • 微信小程序中如实现按顺序同步执行
    这篇文章给大家分享的是有关微信小程序中如实现按顺序同步执行的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。小程序按顺序同步执行有如下两种方式:第一种方式:回调函数执行,后一个方法写到前一个的回调函数中从而实现顺序执...
    99+
    2023-06-14
  • php实现关闭浏览器继续执行的方法
    这篇文章给大家分享的是有关php实现关闭浏览器继续执行的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。php实现关闭浏览器继续执行的方法:首先打开相应的PHP代码文件;然后通过“set_time_limit(...
    99+
    2023-06-14
  • python_实现按键退出程序
    前言 -使用keyboard库来监听键盘按键 # 使用keyboard库需要先安装,可以使用pip命令进行安装pip install keyboard 一、方法 1.单线程退出 使用keyboard库...
    99+
    2023-08-31
    python 开发语言
  • TerminateProcess实现关闭任意程序
    TerminateProcess函数是Windows API中的一个函数,用于终止一个指定的进程。以下是一个示例代码,用于通过调用T...
    99+
    2023-09-28
    程序
  • Java实现线程按序交替执行的方法详解
    目录一、题目描述二、解题思路三、代码详解一、题目描述 题目:有a、b、c三个线程,使得它们按照abc依次执行10次。 二、解题思路 控制执行线程变量flag,利用lock锁来保证线程...
    99+
    2024-04-02
  • Java多种方法实现等待所有子线程完成再继续执行
    现实世界中,我们常常需要等待其它任务完成,才能继续执行下一步。Java实现等待子线程完成再继续执行的方式很多。我们来一一查看一下。 Thread的join方法 该方法是Thread提供的方法,调用join()时,会阻塞主线程,等该Threa...
    99+
    2023-09-30
    java 开发语言
  • Python将脚本程序转变为可执行程序的实现
    类似Java打包操作,若不想让人看到Python程序内部逻辑,也可将其转换为exe可执行文件首先自己写一个Python程序,如下: print("start running..."...
    99+
    2023-02-15
    Python脚本转变为可执行程序 Python 为可执行程序
  • Python实现以主程序的形式执行模块
    前言: 这个先来创建一个模块,名称为christmastree,在该模块中,首先定义一个全局变量,然后创建一个名称为fun_christmastree()的函数,最后再通过print...
    99+
    2024-04-02
  • Python实现计算函数或程序执行时间
    目录一、需求说明二、需求分析三、实现方法3.1、获取执行时间方式一3.2、获取执行时间方式二一、需求说明 在Python程序的开发过程中,一些程序需要获取函数或程序的开始时间、结束时...
    99+
    2023-02-10
    Python计算函数执行时间 Python计算程序执行时间 Python 执行时间 Python 时间
  • 在Java中实现让线程按照自己指定的顺序执行
    目录如何让线程按照自己指定的顺序执行认识Join利用Executors线程池线程的优先级及执行顺序优先级概述使用优先级如何让线程按照自己指定的顺序执行 我们在日常的多线程开发中,可能...
    99+
    2024-04-02
  • JavaScript实现异步任务循环顺序执行详解
    目录一、错误的实现简单的错误实现使用 Promise.all 的错误实现二、正确的实现需求场景:数组的元素作为异步任务的参数,循环遍历该数组,并执行异步任务。 一、错误的实现 简单的...
    99+
    2023-03-19
    JavaScript异步任务循环顺序执行 JavaScript异步任务执行 JavaScript异步任务
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作