首页 > 解决方案 > Python 变量名称或服务未知

问题描述

我在运行这段代码时遇到问题,这对我来说似乎是正确的,但它说我的变量是未知的

#!/usr/bin/env python3

import random
import socket
import time
import sys
import os

print ('Ping Of Death')
os.system("clear")
print() 
ipdeath = input("ip:")
packetsize = input("size:")
print (ipdeath)
global ipdeath , packetsize
os.system("ping {ipdeath} -s {packetsize} ")

变量之所以有效,是因为它从打印文件 (ipdeath) 中打印出来,但不是从 os.system("ping {ipdeath} -s {packetsize} ")

只是返回一个错误,上面写着

ping: {ipdeath}: Name or service not known

谢谢你。

标签: python

解决方案


你不需要使用global

错过了一个格式化的字符串

#!/usr/bin/env python3

import os

print ('Ping Of Death')
os.system("clear")
print() 
ipdeath = input("ip:")
packetsize = input("size:")
os.system(f"ping {ipdeath} -s {packetsize} ")

您没有捕获 ping 命令的输出,这就是为什么不会为它打印任何内容的原因(提示:使用 subprocess 模块而不是os


推荐阅读