PyCon China 2025¶
鈴木たかのりです。 Pythonの国際カンファレンスPyConは世界中で開催されています。 今回筆者は中国で開催されたPyCon China 2025に初めて参加してきたので、その様子をレポートします。
中国自体に行くことも初めてだったので、色々と行く前はドキドキしていましたが、文化の違いを感じつつも楽しくカンファレンスに参加してきました。
PyCon Chinaとは¶
PyCon Chinaは中国で開催される。PyConです。
PyCon Chinaのイベント概要は以下の通りです。
項目 |
内容 |
---|---|
URL |
|
日程 |
2025年9月20日(土) |
場所 |
中国、上海 |
会場 |
|
参加費 |
79元(約1,600円) |
主催 |

PyCon China 2025サイト¶
かなり昔ですが、他の方がPyCon Chinaに参加したレポートがあるので、紹介します。
なお、以前はPyCon Chinaは同じ年に複数の都市(北京、上海、杭州など)で開催されていましたが、2025は上海のみでの開催です。
カンファレンス前日まで¶
今回は以下の旅程でPyCon Chinaに参加しました。 PyCon JP 2025直前(一週間前です!)ということもあり、初めての中国でしたがあまりゆっくりはせずにサクッと参加してきました。
9月18日(木)移動日
9月19日(金)LEGOLAND上海
9月20日(土)PyCon China 2025
9月21日(日)移動日
上海浦東国際空港から上海市内への移動にはリニアモーターカーに乗ってみました。 漢字表記だとリニアモーターカーは「磁浮」と書きます(英語表記はMaglev)。わかりやすい! チケット代は片道50元(約1,000円)とリーズナブルな価格ですが、上海は全体的に地下鉄、タクシーなどどの交通手段も安かったです。

リニアモーターカー¶
浮いているので揺れは速度の割には感じません。最高速度は300km/hです。社内に表示があるので最高速度が出ていることがわかります。 カーブでは減速しないためにかなり車体が傾いているなと感じました。

車内の速度表示¶
リニアモーターカーを降りたら地下鉄を乗り継いでホテルの最寄り駅まで移動します。 上海では駅に入るときに必ず荷物検査があります(めんどい)。 suicaみたいなカードどこで買えるんだろう?と思いながら荷物検査を通ってキョロキョロしていると、地下鉄の改札に見慣れたクレジットカードのマークが見えました。 これはもしや?と思ってスマートフォンをかざすと、クレジットカード決済で改札が開きました!! これは旅行者にとってはめちゃめちゃ便利です。

カード決済に対応した地下鉄の改札¶
調べてみたところ、2025年6月28日から始まったそうです。 最初に15元(約300円)が引かれて「高っ!!」と思いますが、改札を降りると15元は返金され、実際の運賃(3元、4元など安い)が再度引き落とされます。
この日は一人だったので、ホテルから歩いて行けるクラフトビールのお店で晩ご飯を食べました。 訪れたのはTap Thatというお店で、中国各地のクラフトビールを扱っており、当たりだな!と思いました。 ビールを頼んで一息ついたところで店長らしき方に料理を頼もうとすると、ぜんぜん英語が通じません。 翻訳アプリでコミュニケーションを取ると、入り口にあるショーケースから食材を選ぶと串焼きにして出してくれるようです。 おすすめの食材などを聞きながら、肉や野菜などを選んで串焼きとクラフトビールを楽しみました。

ここから食べたいものを選ぶ¶
カンファレンス会場へ¶
カンファレンス当日の朝、カンファレンス会場へ向かいます。 会場へは散歩がてら徒歩で向かいます。30分くらいで会場である上海对外经贸大学に到着しました。 入り口に警備員がおり「PyConで来たんだけど」みたいなことを伝えたけど、英語なのでやっぱり通じません。 しかも私はスピーカーで、事前のチケット購入不要と言われていたので、参加者であることを表すものもありません…
PyCon Chinaに参加するっぽい人がチケットを見せて通っていたので、「あの人と同じです!!」みたいなことを伝えて(?)なんとか通してもらうことができました。 中に入るとPyCon Chinaの大きなパネルがお出迎えです。 テンションが上がりますね!

大きなパネル¶
会場で受付を済ませると台湾から参加しているRex氏がいたのであいさつをして立ち話をしました。 Rex氏はPyCon Taiwan 2025のCo-Chairです。 今年はPyCon US 2025にも一緒に参加していました。
「PyCon Taiwanどうでしたー?」「China主催者とのやりとりを私に教えてくれてありがとう」みたいな話をしていると、PyCon ChinaのOrganizerであるManjusaka氏が「takanoryさんですか?」と声をかけてきました。 Manjusaka氏とはWeChat(事前のスピーカーへの連絡はWeChatです)で少しやりとりしており、名前が印象的なので覚えていました。 X(Twitter)のプロフィールによると「ゆるキャン△」のスーパーファンらしいです(確かにアイコンがそうだった)。 台湾のWei Leeといい、ゆるキャン△は中華系の方を引きつけるなにかがあるんでしょうか。謎です。
オープニング¶
時間になったのでメイン会場に入りオープニングに参加します。 オープニングでは先ほどあいさつしたManjusaka氏があいさつをしていました。 中国語なので当然何を言っているかはわかりません。 また、会場を提供している大学の方(と思われる)のあいさつもありました。

オープニング¶
オープンキングトーク:Python for Everything¶
スピーカー:伊洪
オープニング直後のトークは伊洪氏による「Python for Everything」です。 イベントとしては特に「キーノートです」といった表現はしていませんが、(おそらく)中国のPythonコミュニティに長く関わっている方から、Python全般の話が語られた、キーノート的なトークでした。

伊洪氏¶
トークは「Python for ◯◯」という形で、Pythonでさまざまなことができる、Pythonは色々なものをもたらしてくれるという話でした。
Python for Goodでは多くのスポンサー、スピーカーによってPyConなどのイベント運営がされていること、Python for Dataでは自身がPandasでデータ分析を行い、Excel、SQLなどさまざまなデータ分析用のツールが揃っていることが紹介されました。
Python for Runでは自身のランニングの記録をするサイトyihong.runを紹介しました。GeoJSONのデータを可視化しているそうです。
Python for FunではPython製の面白いプロダクトなどが紹介されました。
github.com/marceloprates/prettymaps:OpenStreeetMapをベースにカスタマイズした地図を描画
github.com/neozhaoliang/pywonderland:数学を利用してきれいな図形を描画するスクリプト集
Parsing Java Bytecode with Python (JelloVM Ep.01) - YouTube:JavaのバイトコードをPythonで解析する動画

Python for Funの図形描画の例¶
Python for Lifeでは自らの活動をGitHubのyihong0618/gitblogで記録していることを紹介していました。 Python for RustではPyO3やruff、uvなどのRust製のツールを紹介し、Python for LLMではPyTorch、LangChainなどLLMで活用されるライブラリが紹介されました。
Python for FriendsではおそらくPythonの友達をアイコンと共に紹介していましたが、当然ですがまったくわかりませんでした。
自分の発表:How to learn Japanese with Python¶
筆者のトークでは「How to learn Japanese with Python」と題して、日本語を勉強している外国の方に対して、Pythonの自然言語処理ライブラリが学習のサポートとして使えますよ、という内容の発表をしました。
発表の様子の写真がなかったので、私の発表をポストしてくれたものを引用します。
Learn Japanese at #PyconChina2025
— ⭐️🌕浅羽星夜🪼🐈 (@AsabaSeiya451) September 20, 2025
By @takanory , Chairman of PyCon JP Association pic.twitter.com/GgdLyQMH4l
発表内容はPyCon US 2025などで行ったものと同じですが、今回は中国の発表ということで、いくつか追加で工夫をしました。
タイトル、サブタイトルの一部に中国語を併記
中国語では1つの漢字に対して発音は1つ、日本語は複数の読みがある、という説明を追加
みなさん当然ですが漢字の意味を知っているので、ある漢字や熟語の意味は簡単に推測できます。 しかし、日本語での読み方を説明すると「マジで?」みたいな反応が多くて、狙い通り日本語の難しいポイントが伝わったかなと思います。
質疑応答でもいくつか質問をしてもらえました。 最初の質問者は日本語で質問をしていたので、参加者に質問の意味を英語で伝えようと思ったんですが、まてよ?と思って「中国語で質問の意味をみなさんに伝えてもらえますか?」と伝えて、ご自身で2カ国語で話してもらいました。簡単ですね。
以下は質疑応答の内容のメモです。
質問:アクセントの情報は取得できますか?
回答:SudachiPyでは読みの情報だけしか取得できない。他のNLPだと発音情報がとれるものもあるが、アクセントまで取得できるかはちょっとわからない。Text to Speech(TTS)を使うと音声データが取得できるので、よいのではないか。私は他でAmazon Pollyを使用したTTSについて発表しているので、三個言うになるかもしれません
質問:日本語の初心者です。「買い増し」のような2つの単語がくっついて短くなった単語が難しいです。どのように勉強すればよいでしょうか
回答:私は日本語のプロや教師ではないので、日本語の文法については説明できません。次回以降のチャレンジとしてこの問題点について認識しておきます。
他の参加者の方が追加で発言してくれて、知り合いはこの問題を博士課程で研究しているとのこと。それくらい難しい問題であるとのことでした
初めての中国でのトークは、日本語に興味を持っている方がたくさん集まってくれて、質疑応答もできてとても有意義でした。
Python 打包和环境管理方案研究¶
スピーカー:Shell氏
このトークではPythonのパッケージとその配布、また仮想環境についてどのようなツールがあるか、その使い方やツールの動作原理などを解説していました。

Shell氏の発表の様子(ディスプレイが横長で見にくい…)¶
まず環境を管理するツールとしてvenv、virtualenv、pyenv、poetry、uvがあげられ、それぞれの使い方が示されました。 トークの後半では自作の仮想環境を作成することによって、仮想環境がどのように動作しているかの詳細な解説が行われました。
仮想環境の構築手順を自作することによって深掘りしていく流れはなかなか興味深かったです。 英語または日本語で同じトークを聞いてみたいなと思いました。
コラム:中国人の Pythonista が勧めるトーク
こんにちは、卿学童(ケイ ガクドウ)と申します。中国出身で大学で日本語を専攻していますが、趣味で Python を独学しています。
今年、初めてオフラインで PyCon China に参加し、同時に PyCon での発表デビューを果たしました。昨年初めて参加した PyCon JP 2024がとても楽しかったので、「来年こそは帰国して PyCon China に参加しよう!」と決意しました。
自分の発表準備があったため、聞けたトークは限られていました。最もお勧めなのは、朱雷氏の「治理依赖关系让 Python 项目架构更整洁:工具与技巧」です。日本語に訳すと「依存関係を整理して、Pythonプロジェクトのアーキテクチャをよりクリーンにする:ツールとテクニック」という意味のタイトルになります。
私にとって最も影響の大きかった中国語の Python 書籍を1冊挙げるなら、必ず朱雷氏の『Python クラフトマン』を選びます。今回の講演は、主にこの書籍の第13章と、彼のブログ記事『import-linter を利用して Python プロジェクトのアーキテクチャを整理する』を元に、Python プロジェクトにおける依存関係をどう標準化するかについて解説しました。
モジュールの結合・分割やパラメーターの簡素化、遅延実装など、他の言語でも一般的に用いられるテクニックに加え、 typing.Protocol
を使って依存関係逆転を実現し、完全に疎結合にする手法についても紹介しました。
低レイヤーのモジュールである users
が、高レイヤーのモジュール marketing
内の SMS 送信に関連するコードに依存しているケースで説明されました。
from marketing import SmsSender
class User:
"""簡単なユーザーオブジェクト"""
def __init__(self):
self.sms_sender = SmsSender()
def add_notification(self, message: str, send_sms: bool):
"""ユーザーに新しい通知を送信する"""
# ...
if send_sms:
self.sms_sender.send(message)
修正されたあとのバージョン:
from typing import Protocol
class SmsSenderProtocol(Protocol):
def send(message: str):
...
class User:
def __init__(self, sms_sender: SmsSenderProtocol):
self.sms_sender = sms_sender
こちらで、朱雷氏ご自身が英語に翻訳されたブログを読むことができます。中でも After 14 years in the industry, I still find programming difficult は必見です!
ライトニングトーク¶
タイムテーブルを見るとわかりますが、PyCon Chinaのライトニングトーク(LT)はメインホールではなく他のセッションと並行して行われます。 筆者はトークとライトニングトーク両方に申し込んだのですが、両方通ったのでライトニングトークでも発表をしました。
タイトルは「Put 🐱 Cat Emojis in your documents!」で、自作のSphinx拡張sphinx-nekochanの紹介です。 ライトニングトークの制限時間は10分と長いので、少しゆっくりめで、丁寧に説明しました。 トーク自体は、ネコチャン絵文字のかわいさもあって、興味を持ってもらえたかな?と思っています。
こちらのスライドも一部に中国語を併記しています。 中国語のチェックをこの記事でコラムを書いている卿さんにしてもらいました、ありがとうございます。

筆者のライトニングトークの様子¶
コラム:PyCon 初登壇の感想
卿学童(ケイ ガクドウ)です。
当初はトークのプロポーザルを出そうかと思いましたが、これまでの技術プレゼンテーション経験がないことを考慮し、まずはライトニングトークから始めるのが最善だと判断しました。結果的に、これは正しい選択だったと思っています。事前に繰り返し練習したものの、本番では緊張で早口になってしまい、終了後、鈴木さんから冗談で「LTってこういうものなんだな」とコメントをいただきました(笑)。
今回の発表タイトルは「日本語勉強楽しいって思ったこと 一度もない」で、鈴木さんの「How to learn Japanese with Python」と内容が類似しています。Sudachi を使用し、クリックだけで単語が調べられるツールを実装しました。
しかし、実際に使ってみると、「アニメや漫画のテキストに含まれる単語の多くがうまく解析されない」という問題に直面しました。そこで、プレゼンテーションの中心は、未登録語を手動で追加・登録する具体的な方法に置きました。
具体的な操作ステップの解説には、あえてテレビアニメ『BanG Dream! It’s MyGO!!!!!』の名台詞「なんで春日影やったの!?」を選びました。
このフレーズを選んだ理由は2点あります。
「なんで」や「春日影」、そして感動詞の「やった」が、現行の SudachiDict に全て未収録で、未登録語のテストケースとして非常に理想的だったからです。
このセリフが中国の若者の間でミーム化するなど、絶大な影響力を持っているからです。私が「このフレーズをテストに使うよ」と伝えたところ、会場の多くの聴衆が笑ってくれました。
この発表が中国人の日本語学習に役立つとともに、彼らが PyCon China や PyCon JP に興味を持つきっかけになれば嬉しいです。
PyCon China のメッセージボードに書いた私のコメント:

「PyCon 最高!9/26-9/27 PyCon JP in 広島も遊びに来てね」の意味¶
最後に、機会があれば来年の PyCon JP で、MeCab を活用した日本語の古文学習支援ツールの開発について発表したいと思っています。広島での再会を楽しみにしています!
今回の発表資料はこちらです。
クロージングがない¶
PyCon Chinaではライトニングトークが他セッションと並行で実施されることも驚きましたが、クロージングがないことにも驚きました。
再度タイムテーブルを見てみると、最後のセッションはメインホールで17:00-18:00に行われたAgent、AIについてのパネルディスカッションです。 他の部屋のセッションは17:10や17:30に終了しています。
クロージングで「また来年!!」みたいなやりとりがなく終わってちょっと残念です。 筆者はスピーカーディナーに誘われていたので、パネルディスカッションが終わる少し前に会場を後にしました。
スピーカーディナー¶
スピーカーを招待したディナーがあるとのことで、参加してきました。 会場は上海の中心部(外灘:バンド)にあるビル上階のSky Lobbyです(多分ここ)。 かなり高い位置にあり、眼下に上海の夜景を見ることができました。 なんかSFみたいです。

SFみたいな上海の夜景¶
ディナーはケータリングでアジアや中華料理系がメインでした。 おいしかったですが当然ビールはありません。 それと寿司がありましたが、海外での寿司はちょっとな…と思ってパスしました。
Co-ChairのCynthiaさんから清華大学(北京の有名な大学)のパンダを記念品にもらいました。 海外から参加した筆者と台湾のRex氏が記念品をもらいました。かわいい。

ひまわりを持った清華大学パンダ¶

夜景をバックにSynthia氏と記念撮影¶
スピーカーディナーのあとはクラフトビール好きの上海メンバーにおすすめしてもらったお店「筝歌啤酒屋」に行きました(baidu地図)。 12種類くらいのオリジナルのクラフトビールを提供しており、なかなかいい感じのお店です。 かなり混んでいて雑然とした感じで、多くのお客さんが店先の道路で立ち飲みをしていました(コップもプラカップ)。

筝歌啤酒屋¶
ビールを飲んでいるときに驚くことがありました。 外で立ち飲みしているところに物乞いの人が来ました。 まぁ、とりあえず無視しようって思って横目で見ていると、その物乞いの人は首から提げたQRコードを指さして「マネーマネー」と言っているのです。 QRコード決済で物乞いをするとは、中国すごいなーと感じました。 確かに私も今回現金は1元も持ち歩かなかったので、現金を要求されても「持っていません」となるので、QRコードの方が確実なのかもしれません。
日本へ¶
カンファレンスの次の日は日本への移動日です。 ホテルで朝食を食べてから、近所のスーパーにお土産を物色しに出かけました。 カルビーのフルグラは中国でもカタカナで「フルグラ」と書いて売っていました。 価格は500gで48.05元(1,030円)とすごく高くてびっくりしました。

中国のフルグラ¶
その後、電車を乗り継いで上海空港に到着し、スムーズに出国検査を受けて制限エリアに入りました。 すると目の前に「上海蟹」のショーケースがありました。 空港で上海蟹を売ってるんですね、さすが上海。

空港で売っている上海蟹¶
無事に成田空港に到着し、筆者の初めての中国、そしてPyCon Chinaの旅は終わりました。
中国のインターネットとアプリ事情¶
筆者は今回初めて中国を訪問しましたが、インターネットやアプリについて色々と気をつける点があるので、そのことを共有したいと思います。
インターネットはVPNが必要¶
まず中国でインターネットに接続するとグレート・ファイアウォールがあるため、普段使っているさまざまなサービスが使用できません。 よく使うサービスだとGmail、Googleドライブ、YouTubeなどのGoogleのサービス全般、X(Twitter)、Facebook、GitHubなどが使用できません。 これらのサービスを使用するために多くの人はVPNを使用しているようです。
筆者はTrip.comが提供している、中国からでも各種サービスに接続可能なeSIMを使用しました。 PCからアクセスする場合は、スマートフォンからテザリングしていました。 おかげで現地でGmailやX(Twitter)への投稿が問題なくできました。 他にはahamoの国際ローミングでも各種サービスは利用可能なようです。
PyCon Chinaの発表を見ていると、普通にGitHubとかX(Twitter)の情報をスライドに載せているので、みなさん基本的にVPNを使っているようです。
地図アプリ¶
接続ができてもまだ問題はあります。 中国に行く前に事前にホテルからLEGOLAND上海へのルートを調べようとしました、するとGoogleマップでは徒歩と自動車のルートしか出てきません。 そうです、Googleマップでは中国の電車を使ったルート検索ができないのです。 調べてみると地図アプリとしては「高徳地図」または「百度地図」を使用するのが一般的のようです。
筆者は高徳地図をインストールして利用していました。 ただ、目的地名などを中国語で正しく入力することが難しいため、ルート検索などはなかなか大変でした。

Googleマップのルート検索では徒歩か自動車しか出ない¶
QRコード決済アプリ¶
中国ではQRコード決済が基本です(物乞いの方にも広まっています)。 決済手段としてはAlipayまたはWeChat Payのどちらかを使用します。 筆者はAlipayにSony Bank WALLETのVisaデビットを紐付けて使用していました(すぐに決済金額がわかるので安心です)。
ビールを飲んだとき、コンビニでの買い物など地下鉄以外はすべてAlipayで決済していました。 アプリの使い方が分からないときも、画面を見せると店員さんが代わりに操作してくれるのでなんとかなりました。
また、Alipayの中からDiDi(タクシーアプリ)を使用できるため、タクシーの支払いもAlipayで行えて便利でした。
コミュニケーションはWeChat¶
チャットコミュニケーションとしてはWeChatが主流のようで、スピーカーへの連絡にWeChatのグループチャットが使用されていました。 筆者はWeChatアカウントを持っていないため、台湾のRex氏からスピーカーへの連絡事項を教えてもらっていました。 その後WeChatアカウントをとりあえず作成し、スピーカーのグループにRex氏が招待してくれたので、他のスピーカーや主催者と事前の連絡が取れるようになりました。
WeChatはチャット画面の中で翻訳が実行できるため、中国語でアナウンスがあっても翻訳してなんとなく読めるので便利です。
終わりに¶
PyCon China 2025のレポートは以上です。 初めての中国とPyCon Chinaは、まさに異文化を感じる体験でした。

主催者、スピーカー集合写真¶
もう少し英語トークがあるとうれしいですが、中国語が多少でもわかるともっと楽しめたのかなとも思います。
筆者の2025年の海外PyConの旅はこれで終わりです。 来年はどこに行こうかなぁ。