首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Python中的特定代码行中添加多个文本条目

问在Python中的特定代码行中添加多个文本条目
EN

Stack Overflow用户
提问于 2018-10-25 16:36:14
回答 2查看 41关注 0票数 0

我想在我的hostname = "216.58.223.3 -c 4"代码行中添加-c 4标志

它目前的工作方式:

代码语言:javascript
复制
@staticmethod
def valve_southafrica_two():

    print("Pinging Valve South Africa 2")
    hostname = "155.133.238.163"
    response = os.system("ping " + hostname)
    if response == 0:
        pingstatus = "Active"
    else:
        pingstatus = "Error"

    print("Ping Test Complete")

    return pingstatus

我希望它的工作方式是这样的:

代码语言:javascript
复制
@staticmethod
def valve_southafrica_two():

    print("Pinging Valve South Africa 2")
    hostname = "155.133.238.163 -c 4"
    response = os.system("ping " + hostname)
    if response == 0:
        pingstatus = "Active"
    else:
        pingstatus = "Error"

    print("Ping Test Complete")

    return pingstatus

对于Linux +/ MacOS line,有没有办法在xxx.xxx (IP)旁边批量添加-c 4标志,或者手动在每一行旁边添加-c 4是唯一的解决方案?

EN

回答 2

Stack Overflow用户

发布于 2018-10-25 16:43:14

您可以使用字符串格式或如下所示的f字符串

代码语言:javascript
复制
flag = '-c 4'
# python 3.6
hostname = f'155.133.238.163 {flag}'

# python 2.7
hostname = '155.133.238.163 {0}'.format(flag)

输出

155.133.238.163 -c 4

票数 0
EN

Stack Overflow用户

发布于 2018-10-25 16:48:28

使用subprocess,call

通过它,我们可以将命令作为参数列表发送,因此我们只需要将-c 4指定为参数

代码语言:javascript
复制
import subprocess
#import os
def valve_southafrica_two():

    print("Pinging Valve South Africa 2")
    hostname = "155.133.238.163"
    response =subprocess.call(["ping",hostname,"-c 4"])

    if response == 0:
        pingstatus = "Active"
    else:
        pingstatus = "Error"

    print("Ping Test Complete")

    return pingstatus
valve_southafrica_two()

输出

代码语言:javascript
复制
Pinging Valve South Africa 2
PING 155.133.238.163 (155.133.238.163) 56(84) bytes of data.
64 bytes from 155.133.238.163: icmp_seq=1 ttl=47 time=327 ms
64 bytes from 155.133.238.163: icmp_seq=2 ttl=47 time=325 ms
64 bytes from 155.133.238.163: icmp_seq=3 ttl=47 time=326 ms
64 bytes from 155.133.238.163: icmp_seq=4 ttl=47 time=325 ms

--- 155.133.238.163 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 325.113/326.192/327.601/0.992 ms
Ping Test Complete
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52984858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档