相关疑难解决方法(0)

如何在Linux上获得总体CPU使用率(例如57%)

我想知道如何使用bash获取系统CPU使用率并以百分比形式显示它.

样本输出:

57%
Run Code Online (Sandbox Code Playgroud)

如果有一个以上的核心,如果可以计算平均百分比,那就太好了.

unix linux bash cpu

177
推荐指数
6
解决办法
40万
查看次数

使用字典选择要执行的函数

我正在尝试使用函数式编程来创建包含键和要执行的函数的字典:

myDict={}
myItems=("P1","P2","P3",...."Pn")
def myMain(key):
    def ExecP1():
        pass
    def ExecP2():
        pass
    def ExecP3():
        pass
        ...
    def ExecPn():
        pass  
Run Code Online (Sandbox Code Playgroud)

现在,我已经看到用于在模块中查找已定义函数的代码,我需要执行以下操作:

    for myitem in myItems:
        myDict[myitem] = ??? #to dynamically find the corresponding function
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,如何列出所有Exec函数,然后使用字典将它们分配给所需的项目?所以最后我会myDict["P1"]() #this will call ExecP1()

我真正的问题是我有大量的这些项目,我创建了一个库来处理它们,所以最终用户只需要调用 myMain("P1")

我认为使用检查模块,但我不确定如何做到这一点.

我有理由避免:

def ExecPn():
    pass
myDict["Pn"]=ExecPn
Run Code Online (Sandbox Code Playgroud)

是我必须保护代码,因为我使用它来提供我的应用程序中的脚本功能.

python dictionary function inspect

40
推荐指数
5
解决办法
8万
查看次数

if语句和命令行中的一行python脚本

为什么我收到以下一个线性python代码的语法错误?

python -c 'import re; if True: print "HELLO";'
  File "<string>", line 1
    import re; if True: print "HELLO";
                ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

以下代码工作得很好

python -c 'if True: print "HELLO";'
Run Code Online (Sandbox Code Playgroud)

如何从命令行更改我的一行以在一行上执行我的预期脚本?

python bash shell command-line

7
推荐指数
2
解决办法
7191
查看次数

如何从Scala使用python -c命令与args一起运行python代码

我有python代码,例如:

import sys

print('1')
print("2")
print(sys.argv[1])
Run Code Online (Sandbox Code Playgroud)

请注意,它可以包含单引号,双引号并接受参数。

在我的服务中,我通过网络接收代码,应该执行它。我不想将代码临时保存为脚本在磁盘上,因此我想用python -c命令执行它。

我如何在bash中执行它(/sf/answers/2069590631/):

$ python3 -c $'import sys\nprint(\'1\')\nprint("2")\nprint(sys.argv[1])' 3
1
2
3
Run Code Online (Sandbox Code Playgroud)

我的问题:如何从Scala执行示例代码?

  import sys.process._
  def runCommand(cmd: String): (Int, String, String) = {
    val stdoutStream = new ByteArrayOutputStream
    val stderrStream = new ByteArrayOutputStream
    val stdoutWriter = new PrintWriter(stdoutStream)
    val stderrWriter = new PrintWriter(stderrStream)
    val exitValue = cmd.!(ProcessLogger(stdoutWriter.println, stderrWriter.println))
    stdoutWriter.close()
    stderrWriter.close()
    (exitValue, stdoutStream.toString, stderrStream.toString)
  }


  val code =
    """
      |import sys
      |
      |print('1')
      |print("2")
      |print(sys.argv[1])
    """.stripMargin

  val arg = 3 …
Run Code Online (Sandbox Code Playgroud)

scala

5
推荐指数
1
解决办法
62
查看次数

Python one liner静音套接字监听器

是否可以编写python one-liner,它将侦听特定的tcp端口,接受连接,并且不响应任何内容.

我可以用两行来做到这一点:

import socket; s = socket.socket(socket.AF_INET, socket.SOCK_STREAM); s.bind(("", 5555)); s.listen(1); accepter = s.accept();
while True: data = accepter[0].recv(1024);
Run Code Online (Sandbox Code Playgroud)

但是我想从中运行它python -c,所以它应该是一行.

我怎样才能做到这一点?

python sockets

3
推荐指数
1
解决办法
1887
查看次数

在shell中使用python,就好像它是awk一样

说我想要print 1 + 1stdout(即单线编码).

随着awk我可以简单地做到这一点:

$ echo | awk '{print 1+1}'
2
Run Code Online (Sandbox Code Playgroud)

如何用python做到这一点?

python shell awk

2
推荐指数
1
解决办法
2044
查看次数

带有if块的Python单行

我有一个从json接收数据的bash脚本.我想将json解析委托给python并使用bash操作其他东西.所以我尝试了以下它并且它有效:

$cat json.txt | python -c "import sys, json; app_data=json.load(sys.stdin); print app_data['item'][0]['id'];"
Run Code Online (Sandbox Code Playgroud)

我决定查看列表大小:

$cat json.txt | python -c 'import sys, json; app_data=json.load(sys.stdin); if len(app_data['item'])==1: print '1 item:'; print app_data['item'][0]['id']'
Run Code Online (Sandbox Code Playgroud)

它因SyntaxError失败:语法无效.

列表大小检查(上面的代码)通常来自单独的.py文件.我更喜欢使用单行代码来保持简单并在shell脚本中存储在一起.

是否可以使用某些逻辑运行python one-liner(如import json)和if block?

python command-line

2
推荐指数
1
解决办法
719
查看次数

标签 统计

python ×5

bash ×2

command-line ×2

shell ×2

awk ×1

cpu ×1

dictionary ×1

function ×1

inspect ×1

linux ×1

scala ×1

sockets ×1

unix ×1