<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Python on Ivon's Blog</title><link>https://ivonblog.com/ja-jp/tags/python/</link><description>Recent content in Python on Ivon's Blog</description><generator>Hugo -- gohugo.io</generator><language>ja-jp</language><managingEditor>infoivonblog.nkfjt@aleeas.com (Ivon Huang)</managingEditor><webMaster>infoivonblog.nkfjt@aleeas.com (Ivon Huang)</webMaster><copyright>Ivon's Blog (ivonblog.com）の記事のシェアを歓迎します。記事を引用する際は元のURLを明記し、CC BY-NC-ND 4.0ライセンスに従ってください。商用利用の場合は、私宛にメールでご連絡ください。</copyright><lastBuildDate>Sat, 12 Apr 2025 17:00:00 +0800</lastBuildDate><atom:link href="https://ivonblog.com/ja-jp/tags/python/index.xml" rel="self" type="application/rss+xml"/><item><title>AndroidスマホでPythonを書く：Termux Python開発環境の構築</title><link>https://ivonblog.com/ja-jp/posts/termux-python/</link><pubDate>Sat, 12 Apr 2025 17:00:00 +0800</pubDate><author>infoivonblog.nkfjt@aleeas.com (Ivon Huang)</author><guid>https://ivonblog.com/ja-jp/posts/termux-python/</guid><description>&lt;!-- Co-translated by ChatGPT --&gt;
&lt;p&gt;Androidスマートフォンアプリ「Termux」でPythonプログラムを書く方法と、Ivon個人の経験を少し共有します。&lt;/p&gt;
&lt;p&gt;AndroidスマートフォンでPythonを書くためのアプリは、使いにくいものが少なくありません。純pythonで書かれたパッケージしかインストールできず、wheelに出くわすと止まってしまいます。おそらく目的は、本格的なPython開発環境を作ることではなく、Duolingoのように初心者が練習する場に近いのでしょう。&lt;/p&gt;
&lt;p&gt;その中で、Termuxだけは進化を続けています。&lt;code&gt;pip install&lt;/code&gt;は今でも通常のLinux環境と100%同じようには動きませんが、Termux専用にコンパイルされたパッケージは増えています。Termuxが提供するPythonパッケージを使えば、簡単な
Pythonプログラムを動かし、スマートフォン内のファイルを処理できます。Root権限は不要です。&lt;/p&gt;
&lt;p&gt;たとえば、pipでPillowをインストールし、写真のEXIF情報を一括処理する小さなプログラムを書くことができます。スマートフォンのDCIMフォルダ内の全写真を読み込み、EXIF情報に基づいて写真上に日付を印字し、別のフォルダへ出力します。（このプログラムは実際に使えます。&lt;a href="https://gist.github.com/ivon852/7cfa3e3e4f56ee8d52eec1124d9be028" target="_blank" rel="noreferrer"&gt;ソースコード&lt;/a&gt;はこちら）
&lt;img src="images/2.webp" width=300&gt;&lt;/p&gt;</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ivonblog.com/ja-jp/posts/termux-python/featured.webp"/></item><item><title>TermuxにもAURがある：「TUR repo」でより多くのサードパーティパッケージをインストールする</title><link>https://ivonblog.com/ja-jp/posts/termux-tur-repo/</link><pubDate>Thu, 09 Nov 2023 02:00:00 +0800</pubDate><author>infoivonblog.nkfjt@aleeas.com (Ivon Huang)</author><guid>https://ivonblog.com/ja-jp/posts/termux-tur-repo/</guid><description>&lt;!-- Co-translated by ChatGPT --&gt;
&lt;p&gt;TermuxをLinuxディストリビューションとして見ると、メインリポジトリはローリングリリース方式で更新されていることが分かります。パッケージマネージャーにはAPTを使い、.debインストールパッケージを扱い、リポジトリ内のPythonやClangのバージョンはできるだけ上流に近い状態に保たれています。&lt;/p&gt;
&lt;p&gt;しかし、一部のパッケージは新しすぎます。古いバージョンのソフトが欲しい場合はどうすればよいでしょうか。出所不明のサードパーティリポジトリを探す？そんなときはTUR repoでパッケージを補えます。&lt;/p&gt;
&lt;p&gt;TURの正式名称は&lt;code&gt;Termux User Repository&lt;/code&gt;です。メンテナーlicy183によると、TURは「信頼できるサードパーティTermuxパッケージリポジトリ」を目指しており、その理念はArch LinuxのAURに似ています。ユーザーが自由にパッケージを投稿できます。&lt;/p&gt;
&lt;p&gt;これにより、ユーザーが特定のソフトウェアをインストールしたい場合でも、サードパーティPPAを追加したり、サードパーティスクリプトを実行したりする必要がなくなります。
&lt;img src="images/2e10caeb.webp" width=300 loading="lazy" alt=""&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/termux-user-repository/tur" target="_blank" rel="noreferrer"&gt;TURのGitHubリポジトリ&lt;/a&gt;では各パッケージのビルドコマンドを確認できますが、TURはAURのようにローカルでパッケージをビルドさせる仕組みではありません。PKGBUILDはなく、収録されているパッケージはすべてビルド済みです。&lt;/p&gt;
&lt;p&gt;TURリポジトリは、一部の&lt;del&gt;ゴミ&lt;/del&gt;、いや、メインリポジトリには適さないパッケージを専門に収録しています。たとえば：&lt;/p&gt;</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ivonblog.com/ja-jp/posts/termux-tur-repo/featured.webp"/></item><item><title>TermuxでAnaconda環境（miniforge）をインストールし、Pythonバージョンを手軽に切り替える</title><link>https://ivonblog.com/ja-jp/posts/android-termux-anaconda/</link><pubDate>Tue, 21 Feb 2023 11:00:00 +0800</pubDate><author>infoivonblog.nkfjt@aleeas.com (Ivon Huang)</author><guid>https://ivonblog.com/ja-jp/posts/android-termux-anaconda/</guid><description>&lt;!-- Co-translated by ChatGPT --&gt;
&lt;p&gt;AnacondaはPythonのディストリビューションで、大量の既製パッケージを提供しています。さらに仮想環境を作成でき、複数のPythonバージョンを管理して同じシステム上で共存させられます。&lt;/p&gt;
&lt;p&gt;AndroidスマホでPythonプログラムを書く際にAnaconda環境が必要なら、Termuxにインストールするのが現実的な選択肢です。下の画像は、AndroidでPythonのOpenCVパッケージを実行した例です。
&lt;figure&gt;
 &lt;img
 class="my-0 rounded-md"
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 alt="OpenCV on Termux on Android"
 src="https://ivonblog.com/ja-jp/posts/android-termux-anaconda/images/Screenshot-20230221-121447.webp"
 onerror="this.onerror=null;this.src='https://ivonblog.com/images/cannotloadimage.avif'"
 width="1080"
 height="462"&gt;&lt;/figure&gt;&lt;/p&gt;
&lt;p&gt;ただし、Androidスマホの多くはaarch64（arm64）アーキテクチャです。Anaconda公式が対応している「ARM」デバイスはAWS Gravitonとarmv7l（32ビット）のRaspberry Piで、軽量版のminicondaも同様です。そのまま入れるとさまざまなエラーが出ます。&lt;/p&gt;
&lt;p&gt;そのため、aarch64アーキテクチャのデバイスでは「miniforge」を使います。miniforgeはminicondaと同じくAnacondaの軽量版で、コマンドの使い方も同じですが、より多くのアーキテクチャのLinuxシステムに対応しています。&lt;/p&gt;

&lt;h2 class="relative group"&gt;1. TermuxとLinux環境をインストールする
 &lt;div id="1-termuxとlinux環境をインストールする" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#1-termux%e3%81%a8linux%e7%92%b0%e5%a2%83%e3%82%92%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%81%99%e3%82%8b" aria-label="アンカー"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="https://ivonblog.com/ja-jp/posts/how-to-use-termux/" target="_blank" rel="noreferrer"&gt;Termux&lt;/a&gt;を初期化します&lt;/p&gt;</description><media:content xmlns:media="http://search.yahoo.com/mrss/" url="https://ivonblog.com/ja-jp/posts/android-termux-anaconda/featured.webp"/></item></channel></rss>