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中如何使用正则表达式的集合字符示例
Oct 09 Python
Python语言描述连续子数组的最大和
Jan 04 Python
利用python 更新ssh 远程代码 操作远程服务器的实现代码
Feb 08 Python
Python基于生成器迭代实现的八皇后问题示例
May 23 Python
Python基于matplotlib画箱体图检验异常值操作示例【附xls数据文件下载】
Jan 07 Python
python opencv 图像拼接的实现方法
Jun 27 Python
python opencv对图像进行旋转且不裁剪图片的实现方法
Jul 09 Python
详解Python修复遥感影像条带的两种方式
Feb 23 Python
Pandas读取csv时如何设置列名
Jun 02 Python
Python爬虫之爬取淘女郎照片示例详解
Jul 28 Python
PyTorch 实现L2正则化以及Dropout的操作
May 27 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
怎样在UNIX系统下安装php3
2006/10/09 PHP
php使用百度天气接口示例
2014/04/22 PHP
ThinkPHP CURD方法之table方法详解
2014/06/18 PHP
php实现微信公众平台发红包功能
2018/06/14 PHP
Jquery中使用setInterval和setTimeout的方法
2013/04/08 Javascript
javascript中innerText和innerHTML属性用法实例分析
2015/05/13 Javascript
js实现a标签超链接提交form表单的方法
2015/06/24 Javascript
js实现根据身份证号自动生成出生日期
2015/12/15 Javascript
jQuery如何获取动态添加的元素
2016/06/24 Javascript
浅谈MVC+EF easyui dataGrid 动态加载分页表格
2016/11/10 Javascript
jQuery中Nicescroll滚动条插件的用法
2016/11/10 Javascript
jQuery实现大图轮播
2017/02/13 Javascript
JS实现浏览上传文件的代码
2017/08/23 Javascript
JS求Number类型数组中最大元素方法
2018/04/08 Javascript
详解使用create-react-app添加css modules、sasss和antd
2018/07/31 Javascript
AngularJS实现与后台服务器进行交互的示例讲解
2018/08/13 Javascript
vue增加强缓存和版本号的实现方法
2019/05/01 Javascript
python读写二进制文件的方法
2015/05/09 Python
python的mysqldb安装步骤详解
2017/08/14 Python
图解Python变量与赋值
2018/04/03 Python
对PyTorch torch.stack的实例讲解
2018/07/30 Python
解决在Python编辑器pycharm中程序run正常debug错误的问题
2019/01/17 Python
Python使用matplotlib 画矩形的三种方式分析
2019/10/31 Python
django Layui界面点击弹出对话框并请求逻辑生成分页的动态表格实例
2020/05/12 Python
使用python采集Excel表中某一格数据
2020/05/14 Python
Python是什么 Python的用处
2020/05/26 Python
解决Django响应JsonResponse返回json格式数据报错问题
2020/08/09 Python
Canvas绘制浮动球效果的示例
2017/12/29 HTML / CSS
会计实习生自我鉴定
2013/12/12 职场文书
学校采购员岗位职责
2014/01/02 职场文书
三年级音乐教学反思
2014/01/28 职场文书
迎新生欢迎词
2015/01/23 职场文书
少先队工作总结2015
2015/05/13 职场文书
正则表达式拆分url实例代码
2022/02/24 Java/Android
Node.js实现爬取网站图片的示例代码
2022/04/04 NodeJs
利用Python实时获取steam特惠游戏数据
2022/06/25 Python