3198| 1
|
[黑科技] 几个好玩有趣的Python入门实例 |
在python教程网学完python尝试开发了几个小项目 蒙特卡洛方法计算π 随机数生成使用random库,文档在此。思路即是随机生成点,落在正方形内。计算正方形内的圆内落点与正方形内落点之比,近似为面积之比,随机数越随机,数量越大越准确。 [mw_shl_code=applescript,true] from random import random from time import perf_counter def calPI(N = 100): hits = 0 start = perf_counter() for i in range(1, N*N+1): x, y = random(), random() dist = pow(x ** 2 + y ** 2, 0.5) if dist <= 1.0: hits += 1 pi = (hits * 4) / (N * N) use_time = perf_counter() - start return pi, use_time PI, use_time = calPI(1000) print('\nuse Monte Carlo method to calculate PI: {}'.format(PI)) print('use time: {} s'.format(use_time))[/mw_shl_code] 递归绘制Koch雪花曲线 koch雪花曲线是分形几何中的一个经典曲线。 使用turtle库,简单的递归即可绘制。 [mw_shl_code=applescript,true] import turtle def koch(size, n): if n == 0: turtle.fd(size) else: for angle in [0, 60, -120, 60]: turtle.left(angle) koch(size/3, n-1) def main(): turtle.setup(1200, 1000) turtle.speed(11) turtle.penup() turtle.goto(-300, 200) turtle.pendown() turtle.pensize(2) level = 4 koch(600, level) # 3阶科赫曲线 turtle.right(120) koch(600, level) turtle.right(120) koch(600, level) turtle.hideturtle() turtle.done() main()[/mw_shl_code] --------------------- 更多学习教程 简单适合新手的python教程:www.99kao.com |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed