使用for循环创建Python oneliner

2024-10-06 12:38:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图编写一个单行python脚本,从PHP文档中从linux终端执行。问题是它有for循环和注释,我不知道如何使它成为一行。脚本如下:

#!/usr/bin/env python

# Import required Python libraries
import RPi.GPIO as GPIO
import time

# Use BCM GPIO references instead of physical pin numbers
GPIO.setmode(GPIO.BCM)

# init list with pin numbers

pinList = [15]

# loop through pins and set mode and state to 'low'

for i in pinList: 
    GPIO.setwarnings(False)
    GPIO.setup(i, GPIO.OUT) 
    GPIO.output(i, GPIO.HIGH)

def trigger() :
        for i in pinList:
          GPIO.output(i, GPIO.HIGH)
          print "on"
#         GPIO.cleanup()
          break


try: 
    trigger()


except KeyboardInterrupt:
  print "  Quit" 
  # Reset GPIO settings
  GPIO.cleanup()

我在一个PHP文档中运行此命令,该文档如下所示:

^{pr2}$

Tags: andin文档import脚本foroutputgpio
1条回答
网友
1楼 · 发布于 2024-10-06 12:38:07

这是一个非常多的代码做很少!你当然不需要保留注释,如果你只设置了一个管脚,那么你就不需要循环了。在

你可以逃脱:

python -c "import RPi.GPIO as GPIO ; GPIO.setmode(GPIO.BCM) ; GPIO.setup(15, GPIO.OUT) ; GPIO.output(15, GPIO.HIGH)"

如果您需要做任何比这更复杂的事情,那么您应该使用一个脚本或使用一些Flask来将脚本作为web服务运行。更好的是,使用Python+Flask完成整个过程。在

相关问题 更多 >