python实现随机漫步算法


Posted in Python onAugust 27, 2018

本文实例为大家分享了python实现随机漫步的具体代码,供大家参考,具体内容如下

编写randomwalk类

from random import choice

class randomwalk():

  def __init__(self,num_points=5000):

    self.num_points=num_points


    self.x_values=[0]
    self.y_values=[0]

  def fill_walk(self):


    while len(self.x_values)<self.num_points:
      x_direction=choice([1,-1])
      x_distance=choice([0,1,2,3,4,5])
      x_step=x_direction*x_distance
      y_direction=choice([1,-1])
      y_distance=choice([0,1,2,3,4,5])
      y_step=y_direction*y_distance

      if x_step==0 and y_step==0:
        continue

      self.x_values.append(self.x_values[-1]+x_step)
      self.y_values.append(self.y_values[-1]+y_step)

choice([1,-1])*步数巧妙的完成了随机方向,x轴随机加y轴随机使得4个方向的随机漫步得以完成

显示随机漫步点

import matplotlib.pyplot as plt
from random_walk import randomwalk


while True:
  rw=randomwalk()
  rw.fill_walk()
  plt.figure(figsize=(15,8))
  point_numbers=list(range(rw.num_points))

  plt.scatter(rw.x_values,rw.y_values,s=1,c=point_numbers,
  edgecolor='none',cmap=plt.cm.Blues)

  plt.scatter(rw.x_values[0],rw.y_values[0],s=50,edgecolor='none',
  c='green')

  plt.scatter(rw.x_values[-1],rw.y_values[-1],s=50,edgecolor='none',
  c='green')

  plt.show()

  a=input("do you want to walk again?(y/n)")
  if a=='n':
    break

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
深入理解Python中的元类(metaclass)
Feb 14 Python
Python下载懒人图库JavaScript特效
May 28 Python
Python3实现发送QQ邮件功能(附件)
Dec 23 Python
Python使用pandas处理CSV文件的实例讲解
Jun 22 Python
python实现简易数码时钟
Feb 19 Python
python 随机打乱 图片和对应的标签方法
Dec 14 Python
深入解析Python小白学习【操作列表】
Mar 23 Python
关于sys.stdout和print的区别详解
Dec 05 Python
python 的numpy库中的mean()函数用法介绍
Mar 03 Python
如何设置PyCharm中的Python代码模版(推荐)
Nov 20 Python
python 爬取百度文库并下载(免费文章限定)
Dec 04 Python
python3读取文件指定行的三种方法
May 24 Python
Python3随机漫步生成数据并绘制
Aug 27 #Python
python如何生成各种随机分布图
Aug 27 #Python
python随机数分布random测试
Aug 27 #Python
pycharm安装和首次使用教程
Aug 27 #Python
Windows下PyCharm安装图文教程
Aug 27 #Python
python 3.7.0 安装配置方法图文教程
Aug 27 #Python
python 3.7.0 下pillow安装方法
Aug 27 #Python
You might like
使用php判断网页是否gzip压缩
2013/06/25 PHP
php计算程序运行时间的简单例子分享
2014/05/10 PHP
PHP中使用sleep造成mysql读取失败的案例和解决方法
2014/08/21 PHP
PHP大神的十大优良习惯
2016/09/14 PHP
event.srcElement+表格应用
2006/08/29 Javascript
javascript 动态生成私有变量访问器
2009/12/06 Javascript
js 居中漂浮广告
2010/03/21 Javascript
JavaScript实现页面滚动图片加载(仿lazyload效果)
2011/07/22 Javascript
javascript简单实现图片预加载
2014/12/03 Javascript
jQuery插件expander实现图片翻转特效
2015/05/21 Javascript
Jquery 分页插件之Jquery Pagination
2015/08/25 Javascript
Nodejs进阶:核心模块net入门学习与实例讲解
2016/11/21 NodeJs
详解Vue2中组件间通信的解决全方案
2017/07/28 Javascript
详解webpack babel的配置
2018/01/09 Javascript
深入理解node.js http模块
2018/01/24 Javascript
JavaScript反射与依赖注入实例详解
2018/05/29 Javascript
react native 文字轮播的实现示例
2018/07/27 Javascript
vue element-ui实现动态面包屑导航
2019/12/23 Javascript
JavaScript实现猜数字游戏
2020/05/20 Javascript
利用js实现简易红绿灯
2020/10/15 Javascript
[00:36]我的中国心——Serenity vs Fnatic
2018/08/21 DOTA
Python实现3行代码解简单的一元一次方程
2014/08/18 Python
Python实现的数据结构与算法之基本搜索详解
2015/04/22 Python
Django中URL视图函数的一些高级概念介绍
2015/07/20 Python
对PyTorch torch.stack的实例讲解
2018/07/30 Python
Python3爬虫爬取百姓网列表并保存为json功能示例【基于request、lxml和json模块】
2018/12/05 Python
用Python实现BP神经网络(附代码)
2019/07/10 Python
用Python从0开始实现一个中文拼音输入法的思路详解
2019/07/20 Python
python Web flask 视图内容和模板实现代码
2019/08/23 Python
django创建简单的页面响应实例教程
2019/09/06 Python
使用Python-OpenCV消除图像中孤立的小区域操作
2020/07/05 Python
员工安全责任协议书
2016/03/22 职场文书
2019数学教师下学期工作总结
2019/06/27 职场文书
Go标准容器之Ring的使用说明
2021/05/05 Golang
golang 实现并发求和
2021/05/08 Golang
以下牛机,你有几个
2022/04/05 无线电