小编Gil*_*len的帖子

我们可以使用python脚本向slank发送消息吗?

在一个松散的团队中,我们可以使用python向用户发送消息吗?我见过各种API,它们向频道提供消息,但不向特定用户提供消息.我们可以这样做吗?

python python-3.x slack-api slack

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

如何比较字典,看看有什么变化?

我的python代码中有3个字典:

  1. self.new_port_dict = {} #carian来存储curr_host的新端口
  2. self.old_port_dict = {} #class to存储old_host中的旧端口
  3. self.results_ports_dict = {} #保存已更改/新添加端口的结果

该脚本需要比较哪个端口发生了变化,我几乎无法提供帮助我:

      def comp_ports(self,filename):
          try:
                f = open(filename)
                self.prev_report = pickle.load(f) # NmapReport

                for s in self.prev_report.hosts:
                    self.old_port_dict[s.address] = set()
                    for x in s.get_open_ports():
                        self.old_port_dict[s.address].add(x)

                for s in self.report.hosts:
                    self.new_port_dict[s.address] = set()
                    for x in s.get_open_ports():
                       self.new_port_dict[s.address].add(x)

                print "The following Host/ports were available in old scan : !!"
                print `self.old_port_dict`
                print "--------------------------------------------------------"
                print "The following Host/ports have been added in new scan:  !!"
                print `self.new_port_dict`
                for h …
Run Code Online (Sandbox Code Playgroud)

python dictionary

5
推荐指数
1
解决办法
154
查看次数

python中有type()的Magic方法吗?

我想知道Python中是否有支持type()内置函数的魔术方法,它允许您设置要返回的自定义值.

python magic-methods

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

使用套接字分别发送 2 条消息

我想使用 分别发送 2 条消息socket。到目前为止我的代码如下。

服务器端:

from socket import *

s = socket(AF_INET, SOCK_STREAM)
s.bind(('localhost', 8888))
s.listen(1)
conn, addr = s.accept()
msg1 = conn.recv(128).decode()
print('msg1', msg1)
msg2 = conn.recv(128).decode()
print('msg2', msg2)
Run Code Online (Sandbox Code Playgroud)

客户端:

from socket import *

sock = socket(AF_INET, SOCK_STREAM)
sock.connect(('localhost', 8888))
msg1 = "hello"
sock.sendall(msg1.encode())
msg2 = "world"
sock.sendall(msg2.encode())
Run Code Online (Sandbox Code Playgroud)

终端打印以下内容:

msg1 helloworld
msg2 
Run Code Online (Sandbox Code Playgroud)

我期望的是分别收到两条消息,并像这样打印它们:

msg1 hello
msg2 world
Run Code Online (Sandbox Code Playgroud)

我如何更改我的代码以获得我想要的?

python sockets

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

如何在Python中创建无限for循环(不使用while循环)?

有没有办法在Python中编写无限循环?

for t in range(0,10):
    if(t == 9): t= 0 # will this set t to 0 and launch infinite loop? No!
    print(t)
Run Code Online (Sandbox Code Playgroud)

一般来说,有没有办法像Java中那样编写无限pythonic for循环而不使用while循环?

python for-loop

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

Python中的Elif条件

我有一些Python代码需要从一个名为的文本文件中获取字符串输入,varfile.txt并在该数据上应用条件并打印输出.代码如下:

file = open("varfile.txt", "r")
lines = file.readlines()
e= str(lines[1]);
print(e)
if  e == '<0.1%':
        print("1")
elif  e == '(0.1-25)%':
        print("2")
elif  e == '(0.25-0.5)%':
        print("3")
elif  e == '(0.5-1)%':
        print("4")
elif  e == '>1%':
        print("5")
else:
        print("0")
Run Code Online (Sandbox Code Playgroud)

产量如下:

(0.25-0.5)%  
0
Run Code Online (Sandbox Code Playgroud)

即使将e值打印为(0.25-0.5)%,也不会与elif子句中的条件进行比较,并且0尽管输出应该是输出3.你能告诉我哪里出错吗?

python

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