我编写了一个python脚本,使其可执行并将其粘贴到
中~/.local/share/nautilus/scripts
问题是我的脚本需要一些用户输入,当它这样做时,nautilus会产生错误
Enter your username: Traceback (most recent call last):
File "/home/sumit/.local/share/nautilus/scripts/sms.py", line 30, in <module>
username = input("Enter your username: ")
EOFError: EOF when reading a line
但是,当我在程序中分配变量(没有任何用户输入)时,脚本工作正常。
如何让脚本也为用户输入运行?
答案 0 :(得分:2)
使用zenity
获取交互式用户输入(read more)
#!/usr/bin/env python
import subprocess
def get_interactive_input(title, text):
try:
result = subprocess.check_output(['zenity','--entry','--title={}'.format(title),'--text={}'.format(text)])
return result.strip()
except subprocess.CalledProcessError as e:
return None
def main():
print get_interactive_input('asd', 'asdasd asdasd asdasdasd')
main()