<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Форум 'Языки с динамической типизацией' на RSDN</title>
    <link>http://rsdn.org/Forum/dynamic/</link>
    <description>Форум предназначен для обсуждения аспектов использования языков с динамической типизацией (Python, Ruby, Perl, Lua и др.)</description>
    <category>dynamic</category>
    <language>ru-ru</language>
    <copyright>Copyright ©, RSDN, 2001-2007</copyright>
    <webMaster>forum@rsdn.org</webMaster>
    <generator>RSDN RSS Generator 1.3</generator>
    <image>
      <url>http://rsdn.org/rsdn.gif</url>
      <title>RSDN</title>
      <link>http://rsdn.org</link>
    </image>
    <lastBuildDate>Wed, 22 Apr 2026 23:47:48 GMT</lastBuildDate>
    <ttl>5</ttl>
	<item>
		<title>[python] - Как в Selenium записать на диск все то, что он получит в driver.get()</title>
		<link>http://rsdn.org/Forum/dynamic/9004716.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/9004716</guid>
		<comments>http://rsdn.org/Forum/dynamic/9004716</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=9004716</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/9004716</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=9004716</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Вот такой код:&lt;br /&gt;
 &lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;driver = webdriver.Chrome(
    service=Service(ChromeDriverManager(driver_version=&lt;span class='str'&gt;"116.0.5845.141"&lt;/span&gt;).install(), options=options))

driver.get(&lt;span class='str'&gt;"https://www.linkedin.com/jobs/search/?currentJobId=3656983339&amp;amp;f_LF=f_AL&amp;amp;geoId=102257491&amp;amp;keywords=python%20developer&amp;amp;origin=JOB_SEARCH_PAGE_SEARCH_BUTTON&amp;amp;refresh=true"&lt;/span&gt;)


all_listings = driver.find_elements(By.CSS_SELECTOR ,&lt;span class='str'&gt;".job-card-container--clickable"&lt;/span&gt;)&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
В результате, в all_listings я получаю пустой обьект, при том, что в хроме в DevTools вполне себе находится по селектору элемет с ".job-card-container--clickable".&lt;br /&gt;
Поэтому хочу увидеть что там selenium скачал на вызове driver.get(). Как это сделать?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Sat, 11 Oct 2025 20:07:59 GMT</pubDate>
		
			<author>senglory &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>2</slash:comments>
		
	</item>

	<item>
		<title>[PHP] ldap over tls</title>
		<link>http://rsdn.org/Forum/dynamic/8915219.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8915219</guid>
		<comments>http://rsdn.org/Forum/dynamic/8915219</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8915219</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8915219</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8915219</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Здравствуйте! Подскажите, пожалуйста, в чем может быть проблема. При переводе скрипта с просто ldap на ldap over tls не проходит авторизация, а скрипт падает на вызове ldap_start_tls.&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;ini_set('display_errors',1);
error_reporting(E_ALL);
ldap_set_option(NULL, LDAP_OPT_DEBUG_LEVEL,9);
putenv('LDAPTLS_REQCERT=never');
$ldap = ldap_connect("ldap://".$ldaphost,$ldapport);
ldap_set_option($ldap, LDAP_OPT_X_TLS_REQUIRE_CERT, 0);
if(!ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3)){
  echo "Could not set LDAPv3\r\n";
}
else if(!ldap_start_tls($ldap)) {
  echo "Could not start secure TLS connection";
}&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
А влогах пишет следующее:&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;TLS trace: SSL_connect:before SSL initialization
TLS trace: SSL_connect:SSLv3/TLS write client hello
TLS trace: SSL_connect:SSLv3/TLS write client hello
TLS trace: SSL_connect:SSLv3/TLS read server hello
TLS trace: SSL_connect:TLSv1.3 read encrypted extensions
TLS trace: SSL_connect:SSLv3/TLS read server certificate request
TLS certificate verification: depth: 0, err: 20, subject: /CN=ad.test.local, issuer: /DC=local/DC=test/CN=test-AD-CA
TLS certificate verification: Error, unable to get local issuer certificate
TLS trace: SSL3 alert write:fatal:unknown CA
TLS trace: SSL_connect:error in error
TLS: can't connect: error:80000002:system library::No such file or directory.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Tue, 25 Mar 2025 15:54:32 GMT</pubDate>
		
			<author>BreakHeart &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>2</slash:comments>
		
	</item>

	<item>
		<title>[python] Ищу набор задач по многопоточности и асинхронности</title>
		<link>http://rsdn.org/Forum/dynamic/8913087.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8913087</guid>
		<comments>http://rsdn.org/Forum/dynamic/8913087</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8913087</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8913087</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8913087</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Посоветуйте плз набор задачек по многопоточности и асинхронности в питоне. Что от них хочу:&lt;br /&gt;
&amp;mdash; Покрывает все основные темы (процессы, семафоры, очереди)&lt;br /&gt;
&amp;mdash; С очевидным проверяемым результатом (если понял тему, то тест проходит, если не понял, то нет)&lt;br /&gt;
&amp;mdash; Сложность постепенно нарастает&lt;br /&gt;
&amp;mdash; Если не понял совсем, можно прочитать объяснение&lt;br /&gt;
&amp;mdash; Можно платно&lt;br /&gt;
Цель &amp;mdash; проверить, что знаю тему, найти пробелы и заботать. Литкод не очень подходит, если я правильно понимаю, там в основном алгоритмы.&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Thu, 20 Mar 2025 10:39:39 GMT</pubDate>
		
			<author>Mike &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>0</slash:comments>
		
	</item>

	<item>
		<title>Custom Loader for Typescript</title>
		<link>http://rsdn.org/Forum/dynamic/8886322.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8886322</guid>
		<comments>http://rsdn.org/Forum/dynamic/8886322</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8886322</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8886322</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8886322</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Всем привет. &lt;br /&gt;
Возникла идея, работоспособность которой я пока не могу оценить. Поиск затрудняется тем, что по приходящим мне в голову ключевым словам отдаётся не то, чего я ожидаю.&lt;br /&gt;
&lt;br /&gt;
Итак &amp;mdash; можно ли "расширить" typescript при помощи custom loader? &lt;br /&gt;
&lt;br /&gt;
Я так понял, что сама по себе идея лоадеров существует и работает, но в мире JavaScript. Типа мы берём файл на &lt;i&gt;каком-то&lt;/i&gt; языке, и при помощи лоадера магически на лету превращаем его в JavaScript.&lt;br /&gt;
В частности, для ноды существует ts-node &amp;mdash; лоадер, который транспилирует TypeScript в ECMAScript на лету, вместо статической транспиляции при помощи tsc.&lt;br /&gt;
Есть ряд лоадеров для всяческой экзотики &amp;mdash; например, затаскивания .css в javascript.&lt;br /&gt;
&lt;br /&gt;
Но вот чего я пока так и не смог понять &amp;mdash; так это есть ли возможность сделать что-то подобное для  &lt;i&gt;тайпскрипта&lt;/i&gt;.&lt;br /&gt;
То есть допустим, у меня есть файл на некотором языке. И у меня есть рецепт, как по этому файлу получить typescript, который содержит не только исполняемый код, но и определения типов и прочие полезные для typescript вещи.&lt;br /&gt;
Можно реализовать этот рецепт в виде инструмента, который вызывается в процессе сборки пакета. &lt;br /&gt;
&lt;br /&gt;
То есть примерно так:&lt;br /&gt;
1. Генерируем из .wtf файлов некие .ts (или пары из .js и .d.ts)&lt;br /&gt;
2. Собираем получившийся проект, в который входят как честные .ts исходники, так и сгенерированные на шаге 1&lt;br /&gt;
3. PROFIT!&lt;br /&gt;
Пример такого подхода можно увидеть в &lt;a class="m" href="https://ohmjs.org/" target="_blank"&gt;https://ohmjs.org/&lt;/a&gt; &amp;mdash; там как раз есть compile-time инструмент, который по .ohm-файлам грамматики порождает .js и .d.ts, и позволяет статически верифицировать корректность кода семантического анализа, зависящего от синтаксического разбора нашей грамматикой. &lt;br /&gt;
Недостаток этого подхода &amp;mdash; в том, что изменения в .wtf (.ohm) не видны в IDE вплоть до явного запуска внешнего инструмента. А также в том, что возможные ошибки диагностируются в порождённом коде, а не в исходном.&lt;br /&gt;
&lt;br /&gt;
Понятно, что можно попытаться это обойти &amp;mdash; например, запуском инструмента в режиме мониторинга файлухи, и оперативного перестраивания зависимостей без явного вызова билд-скриптов. &lt;br /&gt;
Но это &amp;mdash; некоторый паллиатив.&lt;br /&gt;
Хочется как раз как-то объяснить тайпскрипту (в том числе и тому, который исполняется внутри IDE Extension), что .ohm &amp;mdash; это просто такой очень специальный .ts, который надо читать не напрямую, а через лоадер. &lt;br /&gt;
&lt;br /&gt;
И вот пока что я не могу понять, существует ли такая возможность, или нет?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Wed, 22 Jan 2025 10:57:59 GMT</pubDate>
		
			<author>Sinclair &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>4</slash:comments>
		
	</item>

	<item>
		<title>Mojo</title>
		<link>http://rsdn.org/Forum/dynamic/8866533.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8866533</guid>
		<comments>http://rsdn.org/Forum/dynamic/8866533</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8866533</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8866533</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8866533</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Mojo — специализированный язык программирования, созданный компанией Modular и ориентированный на разработку в сфере машинного обучения[2][3][4]. Выпущен в мае 2023 года. Mojo позиционируется как более продвинутая альтернатива Python, практически полностью совместим с ним и его библиотеками, но при этом показывает лучшую производительность, аналогичную таким довольно низкоуровневым языкам программирования, как C и C++.&lt;br /&gt;
&lt;br /&gt;
Ключевые приоритеты языка: разработка в области искусственного интеллекта и системное программирование. Язык умеет взаимодействовать с SIMD-командами, из-за чего позволяет выполнять множество алгебраических операций за раз, что положительно сказывается на производительности.&lt;br /&gt;
&lt;br /&gt;
Mojo не имеет сборщика мусора, вместо этого он использует семантику перемещения, сильно похожую на ту, что есть в Rust. Данный подход позволяет языку безопасно и быстро удалять неиспользуемые ресурсы и отказаться от использования рантайма.&lt;br /&gt;
&lt;br /&gt;
&lt;a class="m" href="https://www.modular.com/mojo" target="_blank"&gt;Mojo&lt;/a&gt; &amp;mdash; The expressiveness of Python,  with the performance of C.&lt;br /&gt;
&lt;br /&gt;
На нем кто-то что-то уже делал? Можно его пробовать использовать вместо Python?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Wed, 11 Dec 2024 17:43:16 GMT</pubDate>
		
			<author>BlackEric &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>0</slash:comments>
		
	</item>

	<item>
		<title>[python] Загрузка зависимостей из текущего каталога</title>
		<link>http://rsdn.org/Forum/dynamic/8807534.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8807534</guid>
		<comments>http://rsdn.org/Forum/dynamic/8807534</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8807534</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8807534</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8807534</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Я сам на питоне не пишу, но периодически приходится использовать под виндой мелкие утилиты, которые, кроме как на питоне, ни на чем написать не удосужились. Для этого у меня есть пара версий интерпретатора, которые, слава богу, достаточно просто распаковать из дистрибутива, не прибегая к "созданию экосистемы" (уже самая идея "экосистемы" бесит неимоверно).&lt;br /&gt;
&lt;br /&gt;
Утилитки обычно обходятся стандартными зависимостями из дистрибутива питона, но попадаются и такие, кому нужны внешние зависимости. Их, само собой, предлагается "установить в экосистему" через pip install. Идея делать глобальную установку чего-либо для заведомо одноразового софта вызывает стойкое отвращение. В таких случаях разумно обойтись складыванием всего необходимого в каталог самой утилиты (кучей или в подкаталоги).&lt;br /&gt;
&lt;br /&gt;
Полез гуглить на эту тему, ожидая найти относительно несложные правила именования/размещения, но внезапно оказалось, что наиболее правильным для таких случаев считается создание virtual environment, представляющего собой полную копию дистрибутива питоновского интерпретатора.&lt;br /&gt;
&lt;br /&gt;
У них действительно все настолько убого, и питон категорически не умеет искать зависимости "поблизости" от основного кода, запрашивающего импорт? Или все-таки достаточно несложных действий, вроде распаковки зависимостей в подкаталоги, с возможным их указанием в каком-нибудь файле конфигурации, а virtual environment предлагается в первую очередь самым тупым юзерам?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Wed, 28 Aug 2024 09:21:14 GMT</pubDate>
		
			<author>Евгений Музыченко &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>37</slash:comments>
		
	</item>

	<item>
		<title>[PowerShell] - почему имя печатается 2 раза на втором вызове?</title>
		<link>http://rsdn.org/Forum/dynamic/8793786.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8793786</guid>
		<comments>http://rsdn.org/Forum/dynamic/8793786</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8793786</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8793786</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8793786</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Вот такой скрипт:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;Add-Type -AssemblyName System.Web

$fileInGpx = "b.gpx"

[hashtable]$wptsUnique = @{}

[xml]$xml = Get-Content -Path $fileInGpx -Encoding UTF8


function trySetWptColor($wpti, $wptExisting)
{
Write-Host $wpti.name
}

$nsManager = New-Object System.Xml.XmlNamespaceManager($xml.NameTable)
$nsManager.AddNamespace("osmand", "https://osmand.net")
$nsManager.AddNamespace("gpx", "http://www.topografix.com/GPX/1/1")
$XPath = "//gpx:wpt"
$wpts = $xml.selectNodes($XPath, $nsManager)


foreach($wpt in $wpts)
{
    $wpt2 = $null
    $lat2 = $wpt.lat -as [double]
    $lon2 = $wpt.lon -as [double]
    $key = $lat2 + '' + $lon2

    if ($wptsUnique.ContainsKey($key))
    {
        $wptExisting = $wptsUnique[$key]

Write-Host $wpt.name
        trySetWptColor($wpt, $wptExisting)
    }
    else
    {
        $wpt2 = @{
            lat = 1
            lon = 2
            name = $wpt.name
            extensions = "qqq"
        }        
        $wptsUnique.add($key, $wpt2)
    }
}&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Вот файл b.gpx&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class='q'&gt;&lt;p&gt;&amp;lt;?xml version='1.0' encoding='UTF-8' standalone='yes' ?&amp;gt;&lt;br /&gt;
&amp;lt;gpx&lt;br /&gt;
xmlns='&lt;a class="m" href="http://www.topografix.com/GPX/1/1" target="_blank"&gt;http://www.topografix.com/GPX/1/1&lt;/a&gt;' &lt;br /&gt;
xmlns:osmand='&lt;a class="m" href="https://osmand.net" target="_blank"&gt;https://osmand.net&lt;/a&gt;' &lt;br /&gt;
&amp;gt;&lt;br /&gt;
  &amp;lt;metadata&amp;gt;&lt;br /&gt;
    &amp;lt;name&amp;gt;M&amp;lt;/name&amp;gt;&lt;br /&gt;
  &amp;lt;/metadata&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;wpt lat="55.9840704" lon="36.6401806"&amp;gt;&lt;br /&gt;
    &amp;lt;name&amp;gt;46Н-02865&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;type&amp;gt;M&amp;lt;/type&amp;gt;&lt;br /&gt;
    &amp;lt;extensions&amp;gt;&lt;br /&gt;
      &amp;lt;osmand:address&amp;gt;46Н-02865&amp;lt;/osmand:address&amp;gt;&lt;br /&gt;
      &amp;lt;osmand:icon&amp;gt;special_star&amp;lt;/osmand:icon&amp;gt;&lt;br /&gt;
      &amp;lt;osmand:background&amp;gt;circle&amp;lt;/osmand:background&amp;gt;&lt;br /&gt;
      &amp;lt;osmand:color&amp;gt;#eecc22&amp;lt;/osmand:color&amp;gt;&lt;br /&gt;
    &amp;lt;/extensions&amp;gt;&lt;br /&gt;
  &amp;lt;/wpt&amp;gt;&lt;br /&gt;
  &amp;lt;wpt lat="55.98407" lon="36.640181"&amp;gt;&lt;br /&gt;
    &amp;lt;name&amp;gt;46Н-02865&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;type&amp;gt;M&amp;lt;/type&amp;gt;&lt;br /&gt;
    &amp;lt;extensions&amp;gt;&lt;br /&gt;
      &amp;lt;osmand:address&amp;gt;46Н-02865&amp;lt;/osmand:address&amp;gt;&lt;br /&gt;
      &amp;lt;osmand:icon&amp;gt;bridge_structure_suspension&amp;lt;/osmand:icon&amp;gt;&lt;br /&gt;
      &amp;lt;osmand:background&amp;gt;circle&amp;lt;/osmand:background&amp;gt;&lt;br /&gt;
      &amp;lt;osmand:color&amp;gt;#eecc22&amp;lt;/osmand:color&amp;gt;&lt;br /&gt;
    &amp;lt;/extensions&amp;gt;&lt;br /&gt;
  &amp;lt;/wpt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gpx&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;br /&gt;
Почему при его запуске получается такой странный вывод?&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class='q'&gt;&lt;p&gt;46Н-02865                                                                                                                                                                                                                                       46Н-02865 46Н-02865&lt;/p&gt;&lt;/blockquote&gt;
&lt;br /&gt;
Write-Host с строки 33 выдает нормальное имя, и тут же с 12 &amp;mdash; задвоенное. Почему так?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Mon, 05 Aug 2024 17:38:14 GMT</pubDate>
		
			<author>senglory &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>1</slash:comments>
		
	</item>

	<item>
		<title>[python]вложенность json</title>
		<link>http://rsdn.org/Forum/dynamic/8770228.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8770228</guid>
		<comments>http://rsdn.org/Forum/dynamic/8770228</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8770228</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8770228</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8770228</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Собственно вопрос. Как в питоне узнать глубину вложенных данных json?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Fri, 28 Jun 2024 10:52:42 GMT</pubDate>
		
			<author>Funny Rabbit &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>3</slash:comments>
		
	</item>

	<item>
		<title>[python] Условный контекстный менеджер</title>
		<link>http://rsdn.org/Forum/dynamic/8763096.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8763096</guid>
		<comments>http://rsdn.org/Forum/dynamic/8763096</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8763096</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8763096</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8763096</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Задача: написать контекстный менеджер need_run, который мог бы выполнять или не выполнять код в зависимости от заданного условия.&lt;br /&gt;
&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;&lt;span class='com'&gt;# код должен вывести только "must be printed"&lt;/span&gt;

with need_run(True):
  &lt;span class='kw'&gt;print&lt;/span&gt;(&lt;span class='str'&gt;'must be printed'&lt;/span&gt;)

with need_run(False):
  &lt;span class='kw'&gt;print&lt;/span&gt;(&lt;span class='str'&gt;'must not be printed'&lt;/span&gt;)&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Возможно ли в принципе? Возможно ли решение без привязки к конкретной реализации?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Thu, 20 Jun 2024 19:54:29 GMT</pubDate>
		
			<author>Буравчик &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>8</slash:comments>
		
	</item>

	<item>
		<title>О смолтоке</title>
		<link>http://rsdn.org/Forum/dynamic/8748480.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8748480</guid>
		<comments>http://rsdn.org/Forum/dynamic/8748480</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8748480</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8748480</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8748480</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;На мой взгляд смолток &amp;mdash; это один из самых интересных языков программирования. По скорости исполнения &amp;mdash; ну, не самый быстрый, зато вполне успешно во второй половине 90-х тянул старенькие пеньки, где было всего мегабайт 16 или в лучшем случае 32 мегабайта памяти. В то же время, концептуально язык очень прост, а при этом остается настолько выразительным, что позоволило ему сохранить стандартную библиотеку коллекций почти в неизменном виде с 70-х или 80-х годов. И что поразительно, библиотека коллекций смолтока вполне остается на уровне такого языка как скала, если рассматривать мутабельную часть последней. А потоки смолтока &amp;mdash; это предвестники современных итераторов, плюс работа с файлами в одном флаконе.&lt;br /&gt;
&lt;br /&gt;
Ближе к делу. Рассмотрим современную опенсорсную реализацию Pharo. Недавно вышла версия Pharo 12.&lt;br /&gt;
&lt;br /&gt;
На виндузе Pharo 11 у меня вполне нормально запустился без каких-либо шероховатостей. Пожалуй, виндовая версия Pharo визуально самая безупречная.&lt;br /&gt;
&lt;br /&gt;
На старом макбуке Pharo 11 тоже встало достаточно уверенно. Единственное, что заметил небольшое мерцание экрана, но вполне терпимо. Еле заметно.&lt;br /&gt;
&lt;br /&gt;
На линуксе могут вас ожидать сюрпризы. Опишу свой опыт установки на АльтЛинукс.&lt;br /&gt;
&lt;br /&gt;
Во-первых, на альте библиотека libc расположена в каталоге /lib64. Соответственно, и в PharoLauncher, и в башевских скриптах виртуальных машин Pharo нужно явно прописать, где находится libc. Эти скрипты находятся в файлах pharo-vm/pharo и pharo-vm/bin/pharo. Такие виртуальные машины находятся там, где вы распакуете pharolauncher, а также в каталоге ~/Pharo/vms.&lt;br /&gt;
&lt;br /&gt;
Значит, добавляем строки&lt;br /&gt;
&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;LIBC_SO=/lib64/libc.so.6
PLATFORMLIBDIR=/lib64&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
И в то же время комментируем строки&lt;br /&gt;
&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;# #Try extracting Libc
# LIBC_SO="`/usr/bin/ldd "$BIN/pharo" | /bin/fgrep /libc. | sed 's/^.*=&amp;gt; \([^ ]*\).*/\1/'`"
# PLATFORMLIBDIR=`expr "$LIBC_SO" : '\(.*\)/libc.*'`&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Это только часть дела.&lt;br /&gt;
&lt;br /&gt;
Тут есть такое странное обстоятельство, что если хотя бы одна из переменных окружения содержит русский текст или, как говорят, вообще содержит юникод, то Pharo толком не запустится.&lt;br /&gt;
&lt;br /&gt;
Поэтому через команду export в консоли смотрим, где есть русские буквы.&lt;br /&gt;
&lt;br /&gt;
У меня это следующая строчка:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;$ export
...
declare -x GPG_TTY="не телетайп"
...&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Соответственно, иду в запускающий скрипт pharolauncher/pharo-launcher и переопределяю проблемную переменную окружения:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;# Otherwise, it would not work (remove all Unicode environment variables)
export GPG_TTY="not teletype"&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
После этих простых манипуляций у вас на АльтЛинуксе должен запустится Pharo &amp;mdash; одна из самых продвинутых опенсорсных реализаций смолтока.&lt;br /&gt;
&lt;br /&gt;
Ну, и на последок. Предлагаю обсудить, где может применяться смолток, или где он уже применяется? Мне кажется, что это один из редких языков типа хаскеля и лиспа, который нас всех переживет и надолго. Такие языки всегда будут оставаться актуальными, чтобы там ни случалось в этом нашем войти-в-айти&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Sun, 19 May 2024 06:14:44 GMT</pubDate>
		
			<author>dsorokin &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>11</slash:comments>
		
	</item>

	<item>
		<title>Чем заменить NumPy операции на массивах в C++ и JS</title>
		<link>http://rsdn.org/Forum/dynamic/8621662.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8621662</guid>
		<comments>http://rsdn.org/Forum/dynamic/8621662</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8621662</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8621662</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8621662</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Портирую скрипт, там одной строчкой 3 мерный массив (картинка с триплетами) умножается на скаляр, отнимается вектор-триплет и умножается на вектор-триплет &amp;mdash; с помощью &lt;b&gt;numpy&lt;/b&gt;.&lt;br /&gt;
Туплю, как эту операцию в одну строку заменить одной строкой &lt;b&gt;numjs&lt;/b&gt;. Ладно JS, но в C++ кто-то ж портирует наверное. Как нужно матчить c Python numpy в C++ например?&lt;br /&gt;
&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;scale = np.float32(1.0 / 255.0)  &lt;span class='com'&gt;# scalar&lt;/span&gt;
shape = (3, 1, 1)
mean = np.array([0.485, 0.456, 0.406]).reshape(shape).astype(&lt;span class='str'&gt;'float32'&lt;/span&gt;)  &lt;span class='com'&gt;# vector (3dim array)&lt;/span&gt;
std = np.array([0.229, 0.224, 0.225]).reshape(shape).astype(&lt;span class='str'&gt;'float32'&lt;/span&gt;)  &lt;span class='com'&gt;# vector (3dim array)&lt;/span&gt;

&lt;span class='kw'&gt;assert&lt;/span&gt; isinstance(img,
                          np.ndarray), &lt;span class='str'&gt;"invalid input 'img' in NormalizeImage"&lt;/span&gt;

img = img.astype(&lt;span class='str'&gt;'float32'&lt;/span&gt;) * scale - mean) / std   &lt;span class='com'&gt;# &amp;lt;=== Как ЭТО портируют в C++ или JS?&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Thu, 19 Oct 2023 21:30:51 GMT</pubDate>
		
			<author>Артём &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>7</slash:comments>
		
	</item>

	<item>
		<title>[python] интеграция для приложения.</title>
		<link>http://rsdn.org/Forum/dynamic/8581007.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8581007</guid>
		<comments>http://rsdn.org/Forum/dynamic/8581007</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8581007</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8581007</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8581007</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Есть коробочное приложение, для которого предусмотрена интеграция с python.&lt;br /&gt;
Т.е. пользователь устанавливал продукт, и мог поставить модуль интеграции с python вызвав setup.py, из состава дистрибутива.&lt;br /&gt;
&lt;br /&gt;
Внутри setup.py, выбирался один из заранее скомпилированных бинарников (для разных версий python) прописывался путь к месту установки приложения и вызвался distutils.core.setup, &lt;br /&gt;
&lt;br /&gt;
Но теперь distutils.core.setup &amp;mdash; depricated:&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;C:\programming\Python311\Lib\site-packages\setuptools\command\install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Те примеры, которые я нахожу, основаны на setup.py.&lt;br /&gt;
Например: &lt;a class="m" href="https://packaging.python.org/en/latest/guides/distributing-packages-using-setuptools/#setup-py" target="_blank"&gt;https://packaging.python.org/en/latest/guides/distributing-packages-using-setuptools/#setup-py&lt;/a&gt;&lt;br /&gt;
Пример файла ведет на &lt;a class="github m" href="https://github.com/pypa/sampleproject/tree/db5806e0a3204034c51b1c00dde7d5eb3fa2532e" target="_blank"&gt;https://github.com/pypa/sampleproject/tree/db5806e0a3204034c51b1c00dde7d5eb3fa2532e&lt;/a&gt; , а там setup.py уже нет.&lt;br /&gt;
&lt;br /&gt;
Где найти актуальные guidlines?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Tue, 15 Aug 2023 14:49:13 GMT</pubDate>
		
			<author>Chorkov &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>1</slash:comments>
		
	</item>

	<item>
		<title>[PowerShell] - почему не распознает русский текст в XML?</title>
		<link>http://rsdn.org/Forum/dynamic/8555141.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8555141</guid>
		<comments>http://rsdn.org/Forum/dynamic/8555141</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8555141</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8555141</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8555141</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Вот мой код:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;Add-Type -AssemblyName System.Web


$fileIn1 = "Bridges.gpx" 

$XPath = "//gpx:wpt"

$ns = @{gpx="http://www.topografix.com/GPX/1/1"}

[hashtable]$wptsUnique = @{}




[xml]$xml = Get-Content $fileIn1 -Encoding UTF8 -Raw
$nsManager = New-Object System.Xml.XmlNamespaceManager($xml.NameTable)
$nsManager.AddNamespace("gpx", "http://www.topografix.com/GPX/1/1")
$wpts = $xml.selectNodes($XPath, $nsManager)


foreach($wpt in $wpts)
{
write-host $wpt.name
}&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Вот XML, который я им читаю:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote class='q'&gt;&lt;p&gt;&amp;lt;?xml version='1.0' encoding='UTF-8' standalone='yes' ?&amp;gt;&lt;br /&gt;
&amp;lt;gpx version="1.1" creator="OsmAnd+ 3.9.5" &lt;br /&gt;
xmlns="&lt;a class="m" href="http://www.topografix.com/GPX/1/1" target="_blank"&gt;http://www.topografix.com/GPX/1/1&lt;/a&gt;" &lt;br /&gt;
xmlns:osmand="&lt;a class="m" href="https://osmand.net" target="_blank"&gt;https://osmand.net&lt;/a&gt;" &lt;br /&gt;
xmlns:xsi="&lt;a class="m" href="http://www.w3.org/2001/XMLSchema-instance" target="_blank"&gt;http://www.w3.org/2001/XMLSchema-instance&lt;/a&gt;" &lt;br /&gt;
xsi:schemaLocation="&lt;a class="m" href="http://www.topografix.com/GPX/1/1" target="_blank"&gt;http://www.topografix.com/GPX/1/1&lt;/a&gt; &lt;a class="m" href="http://www.topografix.com/GPX/1/1/gpx.xsd" target="_blank"&gt;http://www.topografix.com/GPX/1/1/gpx.xsd&lt;/a&gt;" &lt;br /&gt;
xmlns:wptx1="&lt;a class="m" href="http://www.garmin.com/xmlschemas/WaypointExtension/v1" target="_blank"&gt;http://www.garmin.com/xmlschemas/WaypointExtension/v1&lt;/a&gt;"&lt;br /&gt;
xmlns:gpxx="&lt;a class="m" href="http://www.garmin.com/xmlschemas/GpxExtensions/v3" target="_blank"&gt;http://www.garmin.com/xmlschemas/GpxExtensions/v3&lt;/a&gt;" &lt;br /&gt;
xmlns:trp="&lt;a class="m" href="http://www.garmin.com/xmlschemas/TripExtensions/v1" target="_blank"&gt;http://www.garmin.com/xmlschemas/TripExtensions/v1&lt;/a&gt;" &lt;br /&gt;
xmlns:adv="&lt;a class="m" href="http://www.garmin.com/xmlschemas/AdventuresExtensions/v1" target="_blank"&gt;http://www.garmin.com/xmlschemas/AdventuresExtensions/v1&lt;/a&gt;" &lt;br /&gt;
xmlns:prs="&lt;a class="m" href="http://www.garmin.com/xmlschemas/PressureExtension/v1" target="_blank"&gt;http://www.garmin.com/xmlschemas/PressureExtension/v1&lt;/a&gt;" &lt;br /&gt;
xmlns:tmd="&lt;a class="m" href="http://www.garmin.com/xmlschemas/TripMetaDataExtensions/v1" target="_blank"&gt;http://www.garmin.com/xmlschemas/TripMetaDataExtensions/v1&lt;/a&gt;" &lt;br /&gt;
xmlns:vptm="&lt;a class="m" href="http://www.garmin.com/xmlschemas/ViaPointTransportationModeExtensions/v1" target="_blank"&gt;http://www.garmin.com/xmlschemas/ViaPointTransportationModeExtensions/v1&lt;/a&gt;" &lt;br /&gt;
xmlns:ctx="&lt;a class="m" href="http://www.garmin.com/xmlschemas/CreationTimeExtension/v1" target="_blank"&gt;http://www.garmin.com/xmlschemas/CreationTimeExtension/v1&lt;/a&gt;" &lt;br /&gt;
xmlns:gpxacc="&lt;a class="m" href="http://www.garmin.com/xmlschemas/AccelerationExtension/v1" target="_blank"&gt;http://www.garmin.com/xmlschemas/AccelerationExtension/v1&lt;/a&gt;" &lt;br /&gt;
xmlns:gpxpx="&lt;a class="m" href="http://www.garmin.com/xmlschemas/PowerExtension/v1" target="_blank"&gt;http://www.garmin.com/xmlschemas/PowerExtension/v1&lt;/a&gt;" &lt;br /&gt;
xmlns:vidx1="&lt;a class="m" href="http://www.garmin.com/xmlschemas/VideoExtension/v1" target="_blank"&gt;http://www.garmin.com/xmlschemas/VideoExtension/v1&lt;/a&gt;"&amp;gt;&lt;br /&gt;
  &amp;lt;metadata&amp;gt;&lt;br /&gt;
    &amp;lt;name&amp;gt;favourites&amp;lt;/name&amp;gt;&lt;br /&gt;
  &amp;lt;/metadata&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;wpt lat="55.555555" lon="37.777777"&amp;gt;&lt;br /&gt;
    &amp;lt;name&amp;gt; Сарай на даче&amp;lt;/name&amp;gt;&lt;br /&gt;
    &amp;lt;desc&amp;gt;7&amp;lt;/desc&amp;gt;&lt;br /&gt;
    &amp;lt;type&amp;gt;Dacha&amp;lt;/type&amp;gt;&lt;br /&gt;
    &amp;lt;extensions&amp;gt;&lt;br /&gt;
      &amp;lt;osmand:background&amp;gt;circle&amp;lt;/osmand:background&amp;gt;&lt;br /&gt;
    &amp;lt;/extensions&amp;gt;&lt;br /&gt;
  &amp;lt;/wpt&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;br /&gt;
&lt;br /&gt;
Почему при запуске скрипта я вместо "Сарай на даче" получаю "?????? ?? ???????" ? Кодировка XML файла точно UTF-8. И что мне сделать со скриптом, чтобы он начал правильно печатать текст ?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Sun, 02 Jul 2023 09:49:53 GMT</pubDate>
		
			<author>Glestwid &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>1</slash:comments>
		
	</item>

	<item>
		<title>[PowerShell] - как перебрать ноды в моем XML?</title>
		<link>http://rsdn.org/Forum/dynamic/8550129.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8550129</guid>
		<comments>http://rsdn.org/Forum/dynamic/8550129</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8550129</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8550129</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8550129</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Вот мой XML:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;&amp;lt;?xml version='1.0' encoding='UTF-8' standalone='yes' ?&amp;gt;
&amp;lt;gpx version="1.1" creator="OsmAnd+ 3.9.5" xmlns="http://www.topografix.com/GPX/1/1" xmlns:osmand="https://osmand.net" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd"&amp;gt;
  &amp;lt;metadata&amp;gt;
    &amp;lt;name&amp;gt;favourites&amp;lt;/name&amp;gt;
  &amp;lt;/metadata&amp;gt;
  &amp;lt;wpt lat="55.8585655" lon="38.4400009"&amp;gt;
    &amp;lt;name&amp;gt;«Московское малое кольцо», А-107&amp;lt;/name&amp;gt;
    &amp;lt;type&amp;gt;Bridges&amp;lt;/type&amp;gt;
    &amp;lt;extensions&amp;gt;
      &amp;lt;osmand:address&amp;gt;«Московское малое кольцо», А-107&amp;lt;/osmand:address&amp;gt;
      &amp;lt;osmand:icon&amp;gt;bridge_structure_suspension&amp;lt;/osmand:icon&amp;gt;
      &amp;lt;osmand:background&amp;gt;circle&amp;lt;/osmand:background&amp;gt;
      &amp;lt;osmand:color&amp;gt;#eecc22&amp;lt;/osmand:color&amp;gt;
    &amp;lt;/extensions&amp;gt;
  &amp;lt;/wpt&amp;gt;
  &amp;lt;wpt lat="55.955346" lon="37.8313137"&amp;gt;
    &amp;lt;name&amp;gt;«Холмогоры», М-8&amp;lt;/name&amp;gt;
    &amp;lt;type&amp;gt;Bridges&amp;lt;/type&amp;gt;
    &amp;lt;extensions&amp;gt;
      &amp;lt;osmand:icon&amp;gt;bridge_structure_suspension&amp;lt;/osmand:icon&amp;gt;
      &amp;lt;osmand:background&amp;gt;circle&amp;lt;/osmand:background&amp;gt;
      &amp;lt;osmand:color&amp;gt;#8e2512&amp;lt;/osmand:color&amp;gt;
    &amp;lt;/extensions&amp;gt;
  &amp;lt;/wpt&amp;gt;
  &amp;lt;wpt lat="56.9800593" lon="41.0716759"&amp;gt;
    &amp;lt;name&amp;gt;1-я Горинская улица, Иваново&amp;lt;/name&amp;gt;
    &amp;lt;type&amp;gt;Bridges&amp;lt;/type&amp;gt;
    &amp;lt;extensions&amp;gt;
      &amp;lt;osmand:address&amp;gt;1-я Горинская улица, Иваново&amp;lt;/osmand:address&amp;gt;
      &amp;lt;osmand:icon&amp;gt;bridge_structure_suspension&amp;lt;/osmand:icon&amp;gt;
      &amp;lt;osmand:background&amp;gt;circle&amp;lt;/osmand:background&amp;gt;
      &amp;lt;osmand:color&amp;gt;#eecc22&amp;lt;/osmand:color&amp;gt;
    &amp;lt;/extensions&amp;gt;
  &amp;lt;/wpt&amp;gt;
&amp;lt;/gpx&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
Вот PowerShell &lt;br /&gt;
&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;$fileIn1 = "A.gpx" 

$XPath = "//wpt"

Select-Xml -Path $fileIn1 -XPath $Xpath  | Select-Object -ExpandProperty Node&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Почему он мне сейчас ничего не выдает при запуске? И как его поменять, чтобы он начал находить ноды по XPath?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Fri, 23 Jun 2023 21:21:11 GMT</pubDate>
		
			<author>Glestwid &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>5</slash:comments>
		
	</item>

	<item>
		<title>[python] pd.read_csv как загрузить только нужные строки?</title>
		<link>http://rsdn.org/Forum/dynamic/8534821.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8534821</guid>
		<comments>http://rsdn.org/Forum/dynamic/8534821</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8534821</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8534821</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8534821</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;всем доброго! &lt;br /&gt;
вопрос от новичка:  &lt;br /&gt;
имеем ds=(pd.read_csv('data.csv') [lambda x: x['col1'] &amp;gt; 0 ])  &amp;mdash; грузим только строки для которых значение колонки col1  &amp;gt;0&lt;br /&gt;
как сделать, чтобы было условие: значение колонки col1 &amp;gt; 0 и значение колонки col2 &amp;gt; 0?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Mon, 29 May 2023 22:22:16 GMT</pubDate>
		
			<author>MASReady &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>2</slash:comments>
		
	</item>

	<item>
		<title>venv vs conda vs poetry</title>
		<link>http://rsdn.org/Forum/dynamic/8512151.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8512151</guid>
		<comments>http://rsdn.org/Forum/dynamic/8512151</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8512151</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8512151</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8512151</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Здравствуйте.&lt;br /&gt;
&lt;br /&gt;
А чего в питоне так наплодили этих реализаций виртуальных окружений, чем они друг от друга&lt;br /&gt;
отличаются? Правильно ли я понимаю, что питон как линукс, т.е. там все хранится в файлах и все&lt;br /&gt;
локально, соотв. я могу скопировать соотв. папочки с исполняемым python и готово новое виртуальное&lt;br /&gt;
окружение. Осталось этот процесс как-то автоматизировать.&lt;br /&gt;
Т.е. с помощью какого-нибудь питоновского DSL можно легко создавать изолированную инфраструктуру. Это так?&lt;br /&gt;
&lt;br /&gt;
Заранее благодарю.&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Mon, 24 Apr 2023 19:26:21 GMT</pubDate>
		
			<author>Sharov &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>3</slash:comments>
		
	</item>

	<item>
		<title>[python] eval не видит locals в list comprehension</title>
		<link>http://rsdn.org/Forum/dynamic/8499503.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8499503</guid>
		<comments>http://rsdn.org/Forum/dynamic/8499503</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8499503</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8499503</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8499503</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;&lt;pre class='c'&gt;&lt;code&gt;eval(&lt;span class='str'&gt;'[0 for a in A for b in B]'&lt;/span&gt;, None, {&lt;span class='str'&gt;'A'&lt;/span&gt;:[1,2,3], &lt;span class='str'&gt;'B'&lt;/span&gt;:[4,5,6]})
eval(&lt;span class='str'&gt;'[0 for a in A if B]'&lt;/span&gt;,       None, {&lt;span class='str'&gt;'A'&lt;/span&gt;:[1,2,3], &lt;span class='str'&gt;'B'&lt;/span&gt;:True})&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
В обоих случаях переменная A загружается как LOAD_NAME, а B &amp;mdash; как LOAD_GLOBAL, и, естественно, приводит к ошибке.&lt;br /&gt;
&lt;br /&gt;
Вопрос: можно ли это как-то исправить?&lt;br /&gt;
&lt;br /&gt;
Есть лайфхак &amp;mdash; затащить нужные переменные внутрь цикла &amp;mdash; тогда генератор первого уровня возьмёт A,B как LOAD_NAME, а дальше он со своими внутренними переменными управится корректно (LOAD_FAST)&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;eval(&lt;span class='str'&gt;'[0 for _A,_B in [(A,B)] for a in _A for b in _B]'&lt;/span&gt;, None, {&lt;span class='str'&gt;'A'&lt;/span&gt;:[1,2,3], &lt;span class='str'&gt;'B'&lt;/span&gt;:[4,5,6]})&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
или через лямбду (LOAD_DEREF)&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;eval(&lt;span class='str'&gt;'(lambda _A,_B: [0 for a in _A for b in _B])(A,B)'&lt;/span&gt;, None, {&lt;span class='str'&gt;'A'&lt;/span&gt;:[1,2,3], &lt;span class='str'&gt;'B'&lt;/span&gt;:[4,5,6]})&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;
Но код при этом становится грязным.&lt;br /&gt;
&lt;br /&gt;
Подмешивать locals в globals не очень хочется по вопросам производительности.&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Wed, 05 Apr 2023 12:32:36 GMT</pubDate>
		
			<author>Кодт &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>7</slash:comments>
		
	</item>

	<item>
		<title>Codon - быстрый компилятор Python</title>
		<link>http://rsdn.org/Forum/dynamic/8488087.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8488087</guid>
		<comments>http://rsdn.org/Forum/dynamic/8488087</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8488087</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8488087</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8488087</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;&lt;a class="github m" href="https://github.com/exaloop/codon" target="_blank"&gt;https://github.com/exaloop/codon&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
пишут, что создали компилятор для Python, и скомпилированный код в 10-100 раз быстрее, чем на на обычном питоне.&lt;br /&gt;
И сам компилятор вроде как очень быстро компилит.&lt;br /&gt;
&lt;br /&gt;
думаю, может тоже влиться в мейстрим, и таки изучить этот язык?&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Tue, 14 Mar 2023 20:40:53 GMT</pubDate>
		
			<author>wl. &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>11</slash:comments>
		
	</item>

	<item>
		<title>Расскажите про gc в питоне.</title>
		<link>http://rsdn.org/Forum/dynamic/8461626.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8461626</guid>
		<comments>http://rsdn.org/Forum/dynamic/8461626</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8461626</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8461626</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8461626</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;Здравствуйте.&lt;br /&gt;
&lt;br /&gt;
Правильно ли я понимаю, что в питоне помимо rc добавили, правда не знаю когда, gc c поколениями?&lt;br /&gt;
Т.е. там и rc по старинке и для циклических ссылок добавили gc, или там уже полностью на gc перешли?&lt;br /&gt;
Вообще, что  там по части управления памятью, есть какие-то серьезные изменения в версии 3.*?&lt;br /&gt;
&lt;br /&gt;
Заранее благодарю.&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Wed, 01 Feb 2023 13:11:11 GMT</pubDate>
		
			<author>Sharov &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>2</slash:comments>
		
	</item>

	<item>
		<title>'PlaywrightContextManager' object has no attribute '_playwright'</title>
		<link>http://rsdn.org/Forum/dynamic/8449480.1</link>
		<guid isPermaLink="true">http://rsdn.org/Forum/dynamic/8449480</guid>
		<comments>http://rsdn.org/Forum/dynamic/8449480</comments>
		<wfw:comment>http://rsdn.org/Forum/PostRssComment.aspx?mid=8449480</wfw:comment>
		<wfw:commentRss>http://rsdn.org/Forum/RSS/8449480</wfw:commentRss>
		<trackback:ping>http://rsdn.org/Forum/Trackback.aspx?mid=8449480</trackback:ping>
		<description>
			
					&lt;div style="@import url(http://rsdn.org/Forum/Forum.css);"&gt;ПОчему происходит такое?&lt;br /&gt;
&lt;pre class='c'&gt;&lt;code&gt;&lt;span class='kw'&gt;def&lt;/span&gt; start_browser():
    &lt;span class='kw'&gt;global&lt;/span&gt; page

    with sync_playwright() as playwright:                
        browser = playwright.chromium.launch(headless=False)
        page = browser.new_page()
        page.wait_for_timeout(10000)
        page.goto(&lt;span class='str'&gt;"https://site.com/"&lt;/span&gt;)&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
				
		</description>
		
		<category>dynamic</category>
		<pubDate>Mon, 16 Jan 2023 11:13:21 GMT</pubDate>
		
			<author>Funny Rabbit &lt;forum@rsdn.org&gt;</author>
		
		
			<slash:comments>1</slash:comments>
		
	</item>
</channel>
</rss>
