社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  问与答

Python编程随机漫步报错 求高人指点 TypeError: can only concatenate list (not "int") to list

刺勒川 • 5 年前 • 1011 次点击  

from random import choice

class RandomWalk(): """一个生成随机漫步数据的类"""

def __init__(self, num_points=5000):
    """初始化随机漫步的属性"""
    self.num_points = num_points

    #所有随机漫步都始于(0, 0)
    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])
        x_step = x_direction * x_distance

        y_direction = choice([1, -1])
        y_distance = choice([0, 1, 2, 3, 4])
        y_step = y_direction * y_distance

        # 拒绝原地踏步
        if x_step == 0 and y_step == 0:
            continue

        # 计算下一个点的x和y值

        next_x = self.x_values[-1] + x_step
        next_y = self.y_values[-1] + y_step

        self.x_values.append([next_x])
        self.y_values.append([next_y])
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/55381
 
1011 次点击