我打印了一个输出,例如:
enable
configure terminal
interface fa(fanumber)/(fanumber)
ip adress (ip) (subnet mask)
no shutdown
我想在所有括号中输入新数据:
在我的例子中,这些是:
(fanumber)/(fanumber)
(ip) (subnet mask)
我需要在当前函数中编写更多代码还是编写新函数?你知道吗
我该怎么做?你知道吗
我目前的职能是:
def readciscodevice(function, device):
conn = sqlite3.connect('server.db')
cur = conn.cursor()
if device == "switch":
cur.execute(
"SELECT DISTINCT command FROM switch WHERE function =? or function='configure terminal' or function='enable' ORDER BY key ASC",
(function,))
read = cur.fetchall()
return read
elif device == "router":
cur.execute(
"SELECT DISTINCT command FROM router WHERE function =? or function='configure terminal' or function='enable' ORDER BY key ASC",
(function,))
read = cur.fetchall()
return read;
elif device == "showcommand":
cur.execute(
"SELECT DISTINCT command FROM showcommand WHERE function =? or function='enable' ORDER BY key ASC",
(function,))
read = cur.fetchall()
return read;
a = input("function:")
b = input("device:")
for result in readciscodevice(a,b):
print(result[0])
我不是要你重写我的函数。我只是想寻求帮助来解决括号()问题。你知道吗
谢谢
更新: 我是否需要使用replace()来执行我的函数?你知道吗
更多更新: 也许我没有解释清楚我的问题。我想将我的数据重新输入到我的输出中,使其来自:
interface fa(fanumber)/(fanumber)
ip adress (ip) (subnet mask)
进入
interface fa0/1
ip adress 192.168.1.1 255.255.255.0
不确定我是否完全理解您的问题,但要在括号之间的文本中找到任何内容,您可以尝试以下操作:
输出:
但是请注意,一旦括号中的单词可以嵌套(例如“some(words in(insulars))”),这就不太好用了。而且,它不会捕获示例中的除法字符。我猜你必须写一些例外/一个更复杂的正则表达式来捕获一些数学运算符。你知道吗
更新:
相关问题 更多 >
编程相关推荐