【python – 如何只允许管理员执行命令】教程文章相关的互联网学习教程文章

main中的python命令行参数,跳过脚本名称【代码】

这是我的剧本def main(argv):if len(sys.argv)>1:for x in sys.argv:build(x)if __name__ == "__main__":main(sys.argv)所以从命令行我写python myscript.py commandlineargument 我希望它跳过myscript.py并通过commandlineargument(n)运行commandlineargument 所以我明白我的for循环没有考虑到这一点,但我该怎么做呢?解决方法:由于sys.argv是一个列表,你可以使用切片sys.argv [1:]:def main(argv):for x in argv[1:]:build(x)i...

Python命令行’文件输入流’【代码】

我对来自C/C++的python很新,我想知道如何让我的’main.py’重新配置/使用从bash shell给出的输入:python main.py < text.txt (文件是纯文本)解决方法:我将使用argparse创建一个接受文件路径并打开它的选项解析器.import argparsedef main():parser = argparse.ArgumentParser()parser.add_argument('infile', type='open')args = parser.parse_args()for line in args.infile:print lineif __name__ == '__main__':main()如果type...

python – discord.py机器人得到冷却时间剩余的命令【代码】

我正在研究一个基于python的discord bot,它具有以下命令@client.command(name="Mine",description="Mine daily.",brief="Mine daily.",aliases=['mine', 'm'],pass_context=True) @commands.cooldown(1, 30, commands.BucketType.user) async def mine(ctx, arg):<content>但是当用户达到命令的30秒速率限制时,它会将错误输出到python shellIgnoring exception in command Mine Traceback (most recent call last):File "C:\Users\...

`as`命令在Python 3.x中有什么作用?【代码】

我已经多次看过了,但是从来没有理解Python 3.x中as命令的作用.你能用简单的英语解释一下吗?解决方法:它本身不是命令,它是作为with statement的一部分使用的关键字:with open("myfile.txt") as f:text = f.read()在as之后的对象被赋予由with context manager处理的表达式的结果. 另一个用途是重命名导入的模块:import numpy as np所以从现在开始你可以使用名称np而不是numpy. 第三个用途是让您访问Exception对象:try:f = open("...

python – 为什么tkinter模块在通过命令行运行时引发属性错误但在通过IDLE运行时不会引发属性错误?【代码】

与通过IDLE的运行模块f5命令运行时相比,通过命令行运行时代码是否会引发错误? 最近我一直在努力提高代码的可读性和健壮性.因此,我一直在尝试删除所有模块导入*行.我以前使用tkinter import *,我的代码行完全正常: self.path = filedialog.askdirectory() 但是现在我已经从tkinter import *更改为导入tkinter作为tk并且我相应地更改了代码: self.path = tk.filedialog.askdirectory() 名为GUI.py的文件使用以下命令导入此文件:f...

python – 从单击命令调用另一个单击命令【代码】

我想使用一些有用的函数作为命令.为此,我正在测试点击库.我定义了我的三个原始函数,然后装饰为click.command:import click import os, sys@click.command() @click.argument('content', required=False) @click.option('--to_stdout', default=True) def add_name(content, to_stdout=False):if not content:content = ''.join(sys.stdin.readlines())result = content + "\n\tadded name"if to_stdout is True:sys.stdout.writel...

python – 限制命令行选项的值【代码】

如何限制argparse选项的值? 在下面的代码中,sau选项应该只接受0或1的数字,而bg应该只允许一个整数.我该如何实现呢?import os import sys, getopt import argparsedef main ():parser = argparse.ArgumentParser(description='Test script')parser.add_argument('-sau','--set',action='store',dest='set',help='<Required> Set flag',required=True)parser.add_argument('-bg','--base_g',action='store',dest='base_g',help='<R...

如何在终端中创建“python”命令,运行python3而不是python2?【代码】

我刚刚开始学习Python并且进行了一些搜索,所以请原谅我,如果有人问过并回答过. 通过命令行/终端运行脚本时,我必须输入“python3”来运行最新版本的Python.使用Python 2.X我只使用“python”. 有没有办法只使用“python”运行Python 3?它可能看起来有点懒惰,但我大多只是好奇它是否可能,或者如果我实际上可以做到它会不必要地破坏任何东西.解决方法:如果您使用的是Windows,则可以使用Python Launcher For Windows. 这将允许您使用p...

python – mkvirtualenv:找不到命令【代码】

我是Python虚拟环境的新手,所以在阅读this tutorial之后,我尝试使用virtualenvwrapper创建我的第一个环境.我的python3安装现在是裸机:$pip3 list argparse (1.2.1) pip (1.5.6) setuptools (2.1) stevedore (0.15) virtualenv (1.11.6) virtualenv-clone (0.2.5) virtualenvwrapper (4.3.1)根据教程的建议,我在.bashrc文件中添加了以下行:export WORKON_HOME=$HOME/.virtualenvs source /Library/Frameworks/Python.framework/Ve...

在Python代码中使用Git命令【代码】

我被要求编写一个脚本,从Git中提取最新代码,进行构建,并执行一些自动单元测试. 我发现有两个内置的Python模块可以与Git进行交互,这些模块很容易获得:GitPython和libgit2. 我应该使用什么方法/模块?解决方法:一个更简单的解决方案是使用Python子进程模块来调用git.在您的情况下,这将拉出最新的代码并构建:import subprocess subprocess.call(["git", "pull"]) subprocess.call(["make"]) subprocess.call(["make", "test"])文档:...

在Python中并行运行多个系统命令【代码】

我编写了一个简单的脚本,对一系列文件执行系统命令.为了加快速度,我想并行运行它们,但不是一次全部运行 – 我需要控制同时运行的命令的最大数量.什么是最简单的方法来解决这个问题?解决方法:如果你正在调用子进程,我认为不需要使用线程池.使用子进程模块的基本实现是import subprocess import os import timefiles = <list of file names> command = "/bin/touch" processes = set() max_processes = 5for name in files:processe...

使用Python脚本中的命令创建原始输入【代码】

我正在尝试实现一个小脚本,从命令行使用适当的“ftplib”模块在Python中管理具有FTP连接的localhost.我想为用户创建一种原始输入,但已经设置了一些命令. 我试着更好地解释一下: 一旦我通过用户名和密码成功完成了FTP连接和登录连接,我就会显示一种“bash shell”,可以使用最着名的UNIX命令(例如cd和ls分别在目录中移动)并在当前路径中显示文件/文件夹. 例如,我可以这样做:> cd "path inside localhost"从而显示目录或:> ls显示该...

python – 如何只允许管理员执行命令【代码】

我正在写下面的命令@bot.command(pass_context=True) async def admins_only_command(ctx, *, args):'''do stuff我怎样才能将此命令限制为仅限管理员?我试着查看ctx.author.roles.role,它说@everyone.如何检查给定用户是否是管理员?解决方法:有两种方法:使用has_any_role的角色白名单@bot.command(pass_context=True) @commands.has_any_role("Big Cheese", "Medium Cheese") async def admins_only_command(ctx, *, args):'''d...

python – 用于otree的“pip install -U channels”命令出错(运行setup.py bdist_wheel for twisted … error)【代码】

对于使用otree(http://otree.readthedocs.io/)的项目,我在尝试安装Channels时遇到了一些问题,以便利用实时功能. 由于产量很高,我试图弄清楚最重要的部分: 有关完整输出,请参阅:https://jsfiddle.net/L4ccmr2k/1/ 红色标记输出&输出与我方有关: 1.Building wheels for collected packages: twistedRunning setup.py bdist_wheel for twisted ... error2.creating build/temp.macosx-10.6-intel-3.6creating build/temp.macosx-10...

安装python3,在终端中获取命令未找到错误

我安装了python3,我可以打开空闲,它说它正在运行python3.0.1,但是当我在终端中输入python3时(在OSX上)我得到一个错误,说’命令未找到’.进入python让我得到计算机上的2.x版本.关于如何从终端访问python3的任何建议? 谢谢解决方法:首先,不要使用Python 3.0.1.它存在许多问题,并在Python 3.1(目前为3.1.2)发布后正式退役.您可以找到适用于3.1.2 here的python.org Mac OS X安装程序.安装完成后,您需要确保3.1.2框架中的bin目录(/Libr...