Найти - Пользователи
Полная версия: Проблема со списком Python 2.6
Начало » Python для новичков » Проблема со списком Python 2.6
1
sanchopanca
Для начала приведу код

import math
dx = 0.1

x = 0
xl = yl = []
while x <= 1:
yl.append(math.sqrt(x))
xl.append(x)
x += dx
print(xl)
результатом чего является
[0.0, 0, 0.31622776601683794, 0.10000000000000001, 0.44721359549995793, 0.20000000000000001, 0.54772255750516619, 0.30000000000000004, 0.63245553203367588, 0.40000000000000002, 0.70710678118654757, 0.5, 0.7745966692414834, 0.59999999999999998, 0.83666002653407556, 0.69999999999999996, 0.89442719099991586, 0.79999999999999993, 0.94868329805051377, 0.89999999999999991, 0.99999999999999989, 0.99999999999999989]
Кто-нибудь знает в чем ошибка?

Python 2.6.6 win32

——————–
Немного подумал… xl и yl ссылаются на одно и то же место?
——————–
Да, так оно и есть. Всем спасибо за внимание =)
Ed
Это классическая ошибка.
попробуйте вместо xl = yl =
написать
xl =
yl =
bw
Вот именно. Получается что xl и yl это один и тот же список. Кроме варианта Ed'а можно поступить так, тут как больше нравится:
xl, yl = ,

Вариант для извращенцев :-):
xl, yl = map(apply,
  • * 2)

    А это элементарное копирование списков (в данном случае довольно нелепо его использовать, но он работать будет):
    xl =
    yl = xl

    ..bw
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB