如果计算机在同一网络上,则以下代码有效。但是,如果这些计算机位于不同的网络上,则连接会超时。
server.py的代码是:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(("192.168.1.**", 12345))
s.listen(10)
c, addr = s.accept()
print('{} connected.'.format(addr))
f = open("image.jpg", "rb")
datas = f.read(1024)
while datas:
c.send(datas)
datas = f.read(1024)
f.close()
print("Done sending...")
Run Code Online (Sandbox Code Playgroud)
而client.py包括:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("192.168.1.**", 12345))
f = open("recieved.jpg", "wb")
while True:
datas = s.recv(1024)
while datas:
f.write(datas)
datas = s.recv(1024)
f.close()
break
print("Done receiving")
Run Code Online (Sandbox Code Playgroud)
我读到,问题可能来自调制解调器设置。然后我关闭了server.py …
也许我还没有理解线程的屏障概念。但是我写了一个代码,我想了解它是否正确使用了屏障。
以下是代码:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import time
import random
import threading
def f(b):
time.sleep(random.randint(2, 10))
print("{} passed the barrier at: {}".format(threading.current_thread().getName(), time.ctime()))
b.wait()
barrier = threading.Barrier(3)
for i in range(3):
t = threading.Thread(target=f, args=(barrier,))
t.start()
Run Code Online (Sandbox Code Playgroud) 根据这个来源:x和y滚动条都可以添加到tkinter的Text()小部件中.在程序方法中使用的代码是:
from tkinter import *
root = Tk()
frame = Frame(master, bd=2, relief=SUNKEN)
frame.grid_rowconfigure(0, weight=1)
frame.grid_columnconfigure(0, weight=1)
xscrollbar = Scrollbar(frame, orient=HORIZONTAL)
xscrollbar.grid(row=1, column=0, sticky=E+W)
yscrollbar = Scrollbar(frame)
yscrollbar.grid(row=0, column=1, sticky=N+S)
text = Text(frame, wrap=NONE, bd=0,
xscrollcommand=xscrollbar.set,
yscrollcommand=yscrollbar.set)
text.grid(row=0, column=0, sticky=N+S+E+W)
xscrollbar.config(command=text.xview)
yscrollbar.config(command=text.yview)
frame.pack()
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
但是,我选择了类方法并编写了下面的代码,根据以下代码,y滚动条工作,但x滚动条不起作用.为什么x滚动条在这个例子中不起作用?
import tkinter as tk
class App(tk.Frame):
def __init__(self, master=None):
super().__init__(master)
self.grid_rowconfigure(0, weight=1)
self.grid_columnconfigure(0, weight=1)
self.x_scrollbar = tk.Scrollbar(master=self, orient="horizontal")
self.x_scrollbar.grid(row=1, column=0, sticky="w, e")
self.y_scrollbar = tk.Scrollbar(master=self)
self.y_scrollbar.grid(row=0, column=1, sticky="n, s")
self.text = tk.Text(master=self, width=100, …
Run Code Online (Sandbox Code Playgroud)