Есть ли способ надежно обнаружить, если вы На MAC M1, даже если процесс Python работает в Rosetta? < /p>
Я попробовал это: < /p>
Код: Выделить всё
print(sys.platform)
# On Intel silicon:
darwin
# On M1 silicon:
darwin
< /code>
Но он всегда печатает "darwin". это: < /p>
print(os.uname())
# On Intel silicon:
posix.uname_result(sysname='Darwin', nodename='XXX', release='21.5.0', version='Darwin Kernel Version 21.5.0: Tue Apr 26 21:08:22 PDT 2022; root:xnu-8020.121.3~4/RELEASE_X86_64', machine='x86_64')
# On M1 silicon:
posix.uname_result(sysname='Darwin', nodename='XXX', release='21.4.0', version='Darwin Kernel Version 21.4.0: Fri Mar 18 00:47:26 PDT 2022; root:xnu-8020.101.4~15/RELEASE_ARM64_T8101', machine='x86_64')
Код: Выделить всё
# Intel
version='Darwin Kernel Version 21.5.0: Tue Apr 26 21:08:22 PDT 2022; root:xnu-8020.121.3~4/RELEASE_X86_64'
# M1
version='Darwin Kernel Version 21.4.0: Fri Mar 18 00:47:26 PDT 2022; root:xnu-8020.101.4~15/RELEASE_ARM64_T8101'
Подробнее здесь: https://stackoverflow.com/questions/728 ... er-rosetta