小编Ali*_*rld的帖子

"\ r"在以下脚本中有什么作用?

我使用以下脚本使用Telnet重启我的路由器:

#!/usr/bin/env python

import os
import telnetlib
from time import sleep

host = "192.168.1.1"
user = "USER"
password = "PASSWORD"
cmd = "system restart"

tn = telnetlib.Telnet(host)
sleep(1)

tn.read_until("Login: ")
tn.write(user + "\n\r")
sleep(1)

tn.read_until("Password: ")
tn.write(password + "\n\r")
sleep(1)

tn.write(cmd + "\n\r")
Run Code Online (Sandbox Code Playgroud)

我不知道为什么,但从上面的代码中删除"\ r"使脚本无法正常工作.那么"\ r"在这个脚本中做什么以及何时一般使用"\ r"?

注意:我知道"回车",但仍然无法弄清楚它在我的脚本中的用途.我在Linux中运行此脚本.

python telnet

18
推荐指数
3
解决办法
10万
查看次数

如何使用列表推导从列表中删除重复项?

如何使用列表推导从列表中删除重复项?我有以下代码:

a = [1, 2, 3, 3, 5, 9, 6, 2, 8, 5, 2, 3, 5, 7, 3, 5, 8]
b = []
b = [item for item in a if item not in b]
Run Code Online (Sandbox Code Playgroud)

但它不起作用,只产生相同的列表.为什么它产生相同的清单?

python list-comprehension

9
推荐指数
3
解决办法
2万
查看次数

文件已关闭或仍在内存中?

lines = len(open(filename, 'r').readlines()) //or
open(filename, 'w').writelines(lines)
Run Code Online (Sandbox Code Playgroud)

在python中这行,关闭打开的文件?如果不是如何关闭未分配给任何变量的文件?这些类型的编码也被称为"引用语义"?

python

3
推荐指数
1
解决办法
162
查看次数

如何使用range()函数从列表中删除项目时迭代列表?

这是我在尝试学习python编程时遇到的最常见问题.问题是,当我尝试使用"range()"函数迭代列表来检查列表中的给定项是否满足给定条件,如果是,则删除它,它将始终给出"IndexError".那么,有没有一种特殊的方法可以在不使用任何其他中间列表或"while"语句的情况下执行此操作?以下是一个例子:

l = range(20)
for i in range(0,len(l)):
  if l[i] == something:
    l.pop(i)
Run Code Online (Sandbox Code Playgroud)

python

3
推荐指数
1
解决办法
140
查看次数

尝试再次读取打开的文件不会获得任何数据

fin = open('/abc/xyz/test.txt', 'a+')

def lst():
  return fin.read().splitlines()

print lst()

def foo(in):
  print lst()
  fin.write(str(len(lst()) + in)
  fin.flush()
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,当print lst()调用外部函数时,它给出了正确的结果,但是当试图在函数中调用相同的函数时,foo()它产生空列表,其len(lst())值为0.我也尝试通过注释最后两行但仍返回空列表.上面的代码有什么问题?

python

3
推荐指数
2
解决办法
194
查看次数

为什么不能在对象方法之外创建对象属性?

在研究python类属性和实例属性时,我开始知道在对象方法之外创建对象属性是不可能的(或者可能是类方法).像下面的代码将在python中生成"NameError".

class test(object):
    def __init__(self):
        self.lst = []
    self.str = 'xyz'
Run Code Online (Sandbox Code Playgroud)

为什么python不允许这样?我不是在质疑语言创造者的决定,而是背后的任何理由.比如,技术上是不正确的还是这种行为的任何其他缺点.

python

0
推荐指数
1
解决办法
100
查看次数

标签 统计

python ×6

list-comprehension ×1

telnet ×1