Модель памяти Python для этой программы

Мой запрос находится в нижеприведенной программе относительно символов, которые хранят значения и функции, когда они запускались на http://pythontutor.com/ . Мой вопрос: Как выглядит модель выполнения python над программой выше в памяти перед началом интерпретации программы python? Как визуализировать этот макет памяти? например, c исполняемый файл имеет сегменты кода / стека / кучи / дополнительные / […]

Изменить значения списка, итерации по нему в Python?

Например: def update_condition(self, type, params): for condition in self.conditions: condition_loaded = json.loads(condition) if condition_loaded['type'] == type: condition_loaded['params'] = params condition = json.dumps(condition_loaded) Вышеприведенный код ничего не делает, потому что условие не по ссылке. Каков правильный способ сделать это?

Нормализация вектора

Формула для половины вектора равна (Hv) = (Lv + Vv) / | Lv + Vv |, где Lv – вектор света, Vv – вектор взгляда. Я делаю это правильно в коде Python? Vvx = 0-xi # view vector (calculating it from surface points) Vvy = 0-yi Vvz = 0-zi Vv = math.sqrt((Vvx * Vvx) + […]

Режимы Python поддерживают что-то вроде Perl \ G?

У меня есть регулярное выражение Perl (показано здесь , хотя понимание всего этого, надеюсь, не обязательно для ответа на этот вопрос), который содержит метасимвол \ G. Я бы хотел перевести его на Python, но Python, похоже, не поддерживает \ G. Что я могу сделать?

Передать список Python во встроенную функцию Rust

Я изучаю, как внедрять функции Rust в Python, и все работает отлично, если мои входы являются int s, но не перечислены. Если мой файл lib.rs : #[no_mangle] pub extern fn my_func(x: i32, y: i32) -> i32 { return x + y; } Я могу использовать это следующим образом: In [1]: from ctypes import cdll In […]

Python: как разрешать URL-адреса, содержащие «..»

Мне нужно однозначно идентифицировать и хранить некоторые URL-адреса. Проблема в том, что иногда они содержат «..», например http://somedomain.com/foo/bar/../../some/url который в основном является http://somedomain.com/some/url если я Не ошибаюсь. Есть ли функция Python или сложный способ разрешения этих URL-адресов?

Почему python mock patch не работает?

У меня есть два файла spike.py class T1(object): def foo(self, afd): return "foo" def get_foo(self): return self.foo(1) def bar(): return "bar" test_spike.py: from unittest import TestCase import unittest from mock import patch, MagicMock from spike import T1, bar class TestShit(TestCase): @patch('spike.T1.foo', MagicMock(return_value='patched')) def test_foo(self): foo = T1().get_foo() self.assertEqual('patched', foo) @patch('spike.bar') def test_bar(self, mock_obj): mock_obj.return_value = […]

Сроки процессорного времени программы python?

Я хотел бы получить фрагмент кода, и мне хотелось бы просто время выполнения CPU (игнорируя процессы операционной системы и т. Д.). Я пробовал time.clock (), он кажется слишком неточным и каждый раз дает другой ответ. (В теории, конечно, если я запустил его снова для того же фрагмента кода, он должен вернуть то же значение?) Я […]

свойство python getter / setter путаница

Я немного запутался в свойствах в python. Рассмотрим следующий код class A: @property def N(self): print("A getter") return self._N @N.setter def N(self,v): print("A setter") self._N = v def __init__(self): self._N = 1 class B: @property def N(self): print("B getter") return self.aN @N.setter def N(self,v): print("B setter") self.aN = v def __init__(self): self.a = A() if […]

Как я могу проанализировать код Python для выявления проблемных областей?

У меня есть большой репозиторий источников, разделенный на несколько проектов. Я хотел бы подготовить отчет о здоровье исходного кода, определяя проблемные области, которые необходимо решить. В частности, я хотел бы вызывать процедуры с высокой циклической сложностью, идентифицировать повторение и, возможно, запускать некоторый линт-подобный статический анализ, чтобы выявить подозрительные (и, вероятно, ошибочные) конструкции. Как я могу […]

Python - лучший язык программирования в мире.