Skip to content

搞英语 → 看世界

翻译英文优质信息和名人推特

Menu
  • 首页
  • 作者列表
  • 独立博客
  • 专业媒体
  • 名人推特
  • 邮件列表
  • 关于本站
Menu

在 Python 中将非常长的字符串转换为整数

Posted on 2025-08-16

在写上一篇文章的过程中,我想确认一下文章中的数字

旗帜_prime_bw_800.png

确实是质数。这在我手动将图像转换为文本的过程中非常有用:错误导致无法得到质数。例如,我一开始在图像中没有看到 9,直到我将其中四个 8 改成 9 后才得到质数。

但过程中出现了一个问题。简单地将字符串转换为整数不起作用。它产生了以下错误:

SyntaxError:超过整数字符串转换的限制(4300):值有 5382 位数字;使用 sys.set_int_max_str_digits() 来增加限制 – 对于巨大的整数文字,考虑使用十六进制来避免十进制转换限制。

然而,错误信息中建议的修复方法不起作用。不过,将数字存储为多个字符串(即图像的每一行),并进行我自己的基数转换确实有效。

从 sympy 导入 isprime  旗线 = [     "888888888888888888888888888888888888888888888883 ...     "88888111888881118888811188888111888881118888811188888111888883 ...     "88888111888881118888811188888111888881118888811188888111888883 ...     "88888888811188888111888881118888811188888111888888111888888881 ...     "88888888811188888111888881118888811188888111888888111888888881 ...     "888881 ...     "88888111888881118888811188888111888881118888811188888111888883 ...     "888888888111888881118888811188988111888881118888883 ...     "88888888811188888111889881118888811188888111888881118888883 ...     "888881 ...     "888881 ...     "8888888881118898811188888811188888811188888811188888881118888888881 ...     "88888888811188888111889881118888811188888111888881118888883 ...     "88888111888881118888811188888111888881118888811188888111888883 ...     "88888111888881118888811188888111888881118888811188888111888883 ...     "88888888811188888111888881118888811188888111888888111888888881 ...     "88888888811188888111888881118888811188888111888888111888888881 ...     "888881 ...     "88888111888881118888811188888111888881118888811188888111888883 ...     "888888888888888888888888888888888888888888888883 ...     "888888888888888888888888888888888888888888888883 ...     “1 ...     “1 ...     “1 ...     “3 ...     “3 ...     “3 ...     “1 ...     “1 ...     “1 ...     “3 ...     “3 ...     “3 ...     “1 ...     “1 ...     “1 ...     “3 ...     “3 ...     “3 ... ]  m = int(标志线[0]) 对于范围内的 i (1,len (flaglines)):     线 = 标志线[i]     x = int(行)     m = m * 10**len(行) + x 打印(isprime(n)) 

文章“在 Python 中将非常长的字符串转换为整数”最先出现在John D. Cook上。

原文: https://www.johndcook.com/blog/2025/08/15/very-long-string-to-int/

本站文章系自动翻译,站长会周期检查,如果有不当内容,请点此留言,非常感谢。
  • Abhinav
  • Abigail Pain
  • Adam Fortuna
  • Alberto Gallego
  • Alex Wlchan
  • Answer.AI
  • Arne Bahlo
  • Ben Carlson
  • Ben Kuhn
  • Bert Hubert
  • Big Technology
  • Bits about Money
  • Brian Krebs
  • ByteByteGo
  • Chip Huyen
  • Chips and Cheese
  • Christopher Butler
  • Colin Percival
  • Cool Infographics
  • Dan Sinker
  • David Walsh
  • Dmitry Dolzhenko
  • Dustin Curtis
  • eighty twenty
  • Elad Gil
  • Ellie Huxtable
  • Ethan Dalool
  • Ethan Marcotte
  • Exponential View
  • FAIL Blog
  • Founder Weekly
  • Geoffrey Huntley
  • Geoffrey Litt
  • Greg Mankiw
  • HeardThat Blog
  • Henrique Dias
  • Herman Martinus
  • Hypercritical
  • IEEE Spectrum
  • Investment Talk
  • Jaz
  • Jeff Geerling
  • Jonas Hietala
  • Josh Comeau
  • Lenny Rachitsky
  • Li Haoyi
  • Liz Danzico
  • Lou Plummer
  • Luke Wroblewski
  • Maggie Appleton
  • Matt Baer
  • Matt Stoller
  • Matthias Endler
  • Mert Bulan
  • Mind Matters
  • Mostly metrics
  • Naval Ravikant
  • News Letter
  • NextDraft
  • Non_Interactive
  • Not Boring
  • One Useful Thing
  • Phil Eaton
  • Product Market Fit
  • Readwise
  • ReedyBear
  • Robert Heaton
  • Rohit Patel
  • Ruben Schade
  • Sage Economics
  • Sam Altman
  • Sam Rose
  • selfh.st
  • Shtetl-Optimized
  • Simon schreibt
  • Slashdot
  • Small Good Things
  • Steph Ango
  • Stephen Wolfram
  • Steve Blank
  • Taylor Troesh
  • Telegram Blog
  • The Macro Compass
  • The Pomp Letter
  • thesephist
  • Thinking Deep & Wide
  • Tim Kellogg
  • Understanding AI
  • Wes Kao
  • 英文媒体
  • 英文推特
  • 英文独立博客
©2025 搞英语 → 看世界 | Design: Newspaperly WordPress Theme