会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 132358个问题

struct
math
threading
time
sys
multiprocessing
multiprocessing Process


read_csv(filename):

    start_time = time.time()

    sem
    sem = threading.Semaphore()

    file
    file = (filename, )
    (% file.read().decode())

    encoded_triangles = file.read()
    triangles = .from_bytes(encoded_triangles, )

    manager = multiprocessing.Manager()
    return_tot = manager.dict()
    totals = []

    return_coord = manager.dict()
    coords = []


    index (, ):
        p = Process(=thread_compute, =(index, triangles, return_tot, return_coord))
        totals.append(p)
        coords.append(p)
        p.start()
    
    index (, ):
        p.join()

    total_area = index (, ):
        total_area += return_tot[index]

    min_box = find_box(return_coord[], return_coord[], return_coord[], return_coord[])

    end_time = time.time()
    total_time = end_time - start_time

    triangles, total_area, min_box, total_time

thread_compute(index, triangles, return_tot, return_coord):
    total_area = min_max = []

    start = (index * triangles / )
    (triangles / )  > triangles - :
        end = triangles
    :
        end = start + (triangles / )

    triangle (start, end):
        
        sem.acquire()
        = [file.read(), file.read(), file.read()]
        p1 = [file.read(), file.read(), file.read()]
        p2 = [file.read(), file.read(), file.read()]
        p3 = [file.read(), file.read(), file.read()]
        = file.read()
        sem.release()

        p1, p2, p3 = process_coord(p1, p2, p3)
        tri_area = compute(p1, p2, p3)

        total_area += tri_area

        temp = []
        i (,):
            temp.append(([p1[i], p2[i], p3[i]]))
        i (,):
            temp.append(([p1[i], p2[i], p3[i]]))

        triangle == start:
            min_max = temp
        :
            i (,):
                temp[i] < min_max[i]:
                    min_max[i] = temp[i]
            i (,):
                temp[i] > min_max[i]:
                    min_max[i] = temp[i]

    return_coord[index] = min_max
    return_tot[index] = total_area

process_coord(p1, p2, p3):
    p1 = convert_values(p1)
    p2 = convert_values(p2)
    p3 = convert_values(p3)
    p1, p2, p3

convert_values(point):
    [struct.unpack(, point[])[],
            struct.unpack(, point[])[],
            struct.unpack(, point[])[]]

compute(p1, p2, p3):
    a = math.sqrt((p2[] - p1[]) ** + (p2[] - p1[]) ** + (p2[] - p1[]) ** )
    b = math.sqrt((p3[] - p1[]) ** + (p3[] - p1[]) ** + (p3[] - p1[]) ** )
    c = math.sqrt((p3[] - p2[]) ** + (p3[] - p2[]) ** + (p3[] - p2[]) ** )
    p = (a + b + c) / area = math.sqrt(p * (p - a) * (p - b) * (p - c))
    area

find_box(min_max1, min_max2, min_max3, min_max4):

    = []
    min_max = min_max1

    i (,):
        min_max2[i] < min_max[i]:
            min_max[i] = min_max2[i]
    i (,):
        min_max2[i] > min_max[i]:
            min_max[i] = min_max2[i]
    i (,):
        min_max3[i] < min_max[i]:
            min_max[i] = min_max3[i]
    i (,):
        min_max3[i] > min_max[i]:
            min_max[i] = min_max3[i]
    i (,):
        min_max4[i] < min_max[i]:
            min_max[i] = min_max4[i]
    i (,):
        min_max4[i] > min_max[i]:
            min_max[i] = min_max4[i]
    
    
    line1 = math.sqrt((min_max[] - min_max[]) ** )
    line2 = math.sqrt((min_max[] - min_max[]) ** )
    line3 = math.sqrt((min_max[] - min_max[]) ** )
    box = % (line1, line2, line3)
    box

show_output(triangles, total_area, min_box, ):
    (% triangles)
    (% total_area)
    (% min_box)
    (% )

__name__ == :
    (sys.argv) < :
        ()
    filename = (sys.argv[])
    triangles, total_area, min_box, total_time = read_csv(filename)
    show_output(triangles, total_area, min_box, total_time)


image.png

老师,您帮我看看,这个报这个错误,我应该在哪里输入文件名字

Python 全系列/第二阶段:Python 深入与提高/游戏开发-坦克大战 2612楼
Python 全系列/第二阶段:Python 深入与提高/文件处理 2613楼
Python 全系列/第二阶段:Python 深入与提高/游戏开发-坦克大战 2614楼
Python 全系列/第二阶段:Python 深入与提高/GUI编程(隐藏) 2615楼
Python 全系列/第二阶段:Python 深入与提高/异常机制 2617楼
Python 全系列/第二阶段:Python 深入与提高/模块 2618楼
Python 全系列/第二阶段:Python 深入与提高/GUI编程(隐藏) 2619楼
Python 全系列/第二阶段:Python 深入与提高/GUI编程(隐藏) 2620楼
Python 全系列/第二阶段:Python 深入与提高/GUI编程(隐藏) 2622楼
Python 全系列/第二阶段:Python 深入与提高/GUI编程(隐藏) 2623楼

from tkinter import *
import random


class Application(Frame):
    def __init__(self, master=None):
        super().__init__(master)
        self.master = master
        self.pack()
        self.creatWight()

    def creatWight(self):
        self.canvas = Canvas(self, width=300, height=200, bg="green")
        self.canvas.pack()
        line = self.canvas.create_line(10, 10, 30, 20, 40, 50)
        rect = self.canvas.create_rectangle(50, 50, 100, 100)
        oval = self.canvas.create_oval(50, 50, 100, 100)

        global photo
        photo = PhotoImage(file=r"e:/pycharm_professional/imgs/logo.gif")
        self.canvas.create_image(150, 170, image=photo)

        Button(self, text="画10个矩形", command=self.draw50Recg).pack(self="left")

        def draw50Recg(self):
            for i in range(0, 10):
                x1 = random.randrange(int(self.canvas["width"])/2)
                y1 = random.randrange(int(self.canvas["height"]) / 2)
                x2 = x1 + random.randrange(int(self.canvas["width"]) / 2)
                y2 = y1 +random.randrange(int(self.canvas["width"]) / 2)
                self.canvas.create_rectangle(x1, y1, x2, y2)


if __name__ == "__main__":
    root = Tk()
    root.geometry("400x300+400+300")
    root.title("canvas组件")
    app = Application(master=root)
    root.mainloop()

请问老师为什么我这结果显示对象没有属性draw50Recg010.png

Python 全系列/第二阶段:Python 深入与提高/GUI编程(隐藏) 2625楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637