Python-将字符串分割成更小的块并分配一个变量

2023-11-24

是否可以在 python 中拆分字符串并将拆分的每个部分分配给稍后使用的变量?如果可能的话,我希望能够按长度分割,但我不确定使用 len() 会如何工作。

我尝试过这个,但它没有给我我需要的东西:

x = 'this is a string'
x.split(' ', 1)
print x

结果: ['这']

我想得到这样的结果:

a = 'this'
b = 'is'
c = 'a'
d = 'string'

如果您想一次访问 3 个字符的字符串,则需要使用slicing.

您可以使用如下列表理解来获取字符串的 3 个字符长片段的列表:

>>> x = 'this is a string'
>>> step = 3
>>> [x[i:i+step] for i in range(0, len(x), step)]
['thi', 's i', 's a', ' st', 'rin', 'g']
>>> step = 5
>>> [x[i:i+step] for i in range(0, len(x), step)]
['this ', 'is a ', 'strin', 'g']

重要的是:

[x[i:i+step] for i in range(0, len(x), step)]

range(0, len(x), step)为我们提供每个的开始索引step- 字符切片。for i in将迭代这些索引。x[i:i+step]得到切片x从索引开始i and is step长字符。

如果你知道你会得到exactly每次四块,那么你可以这样做:

a, b, c, d = [x[i:i+step] for i in range(0, len(x), step)]

如果发生这种情况3 * step < len(x) <= 4 * step.

如果你没有正好四块,那么Python会给你一个ValueError试图解开这个列表。因此,我认为这种技术非常脆弱,并且不会使用它。

你可以简单地做

x_pieces = [x[i:i+step] for i in range(0, len(x), step)]

现在,您曾经访问过的地方a,您可以访问x_pieces[0]. For b, 您可以使用x_pieces[1]等等。这可以让您更加灵活。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python-将字符串分割成更小的块并分配一个变量 的相关文章

随机推荐

  • Java Logging API 生成空日志文件

    我尝试阅读有关 Java 日志记录 API 的教程 www vogella com articles Logging article html 但生成的文件是空的 在 Netbeans Eclipse 以及从 cmd 运行 jar 中进行了
  • 返回初始化列表机制

    如果返回可从初始值设定项列表构造的类型时 涉及什么机制 我不指定要返回的类型 如下所示 std array
  • 如何导出 ECDiffieHellmanCng 的私钥

    我正在尝试从一个新实例导出密钥ECDiffieHellmanCng对象 以便我稍后可以使用相同的键创建它的实例 但我在尝试导出它时遇到错误 Create new ECDiffieHellmanCng which automatically
  • NSUserNotificationAlertStyle plist 键不起作用

    我正在 10 8 上处理示例用户通知 但是当我将其设置为警报时 关键的 NSUserNotificationAlertStyle 不起作用 我的应用程序仍然将其显示为横幅 这是通过系统首选项控制它的唯一方法 但是如果我想设置默认行为怎么办保
  • python3中的日期时间到十进制小时和分钟

    我有一个dataframe with meteorological数据每30 minutes 使用我的日期时间索引 我需要创建一个列timestamps 但它必须在decimal 下面是示例 In 134 df index 0 3 Out
  • 提交后如何在文本输入中保留值?

    我想验证表单以确保用户输入姓名 如果用户只输入姓氏 则表单应再次显示 并在姓氏字段旁边显示一条错误消息 但名称值应still在那里 我不知道该怎么办 呵呵 我只是一个 PHP 程序员新手 这是我到目前为止所拥有的
  • 将 eval() 限制在一个狭窄的范围内

    我有一个 javascript 文件 它读取另一个文件 该文件可能包含需要 eval 的 javascript 片段 脚本片段应该符合 javascript 的严格子集 该子集限制了它们可以执行的操作以及可以更改的变量 但我想知道是否有某种
  • 从 Robot Framework 中的不同路径导入自定义库

    我在不同的文件夹中有几个测试文件 针对不同的问题 并且我想使用一个单独的文件夹来包含我使用的所有自定义库 所有子文件夹 包括自定义库 都将位于一个主文件夹中 如何从分离的文件夹中导入测试库 这是文件夹层次结构 Test Library Te
  • 扩展部分类在实体框架中的放置

    由于部分类必须位于同一名称空间中 因此我唯一的选择是将它们放置在与 edmx 相同的目录中 如果是这种情况 我假设文件名总是必须不同 另外 我还有什么需要做的 还是我只是在同一目录中创建另一个同名的部分类并向其添加属性 方法 部分类应与 e
  • 仅当 Foo.js 被导入到某个地方时,VSCode 才会通过相应的 Foo.d.ts 为 Foo.js 提供智能感知;如何在 Foo.js 本身中启用智能感知?

    设置是一个 创建 React 应用程序 其中包含以下内容jsconfig json compilerOptions experimentalDecorators true baseUrl src include src 目录结构 src C
  • 将预定义的 HTML 连接到 Backbone 中的模型和视图

    我刚开始使用 Backbone js 所以我必须说我还不太熟悉这些概念 我已经预定义了 HTML 我想使用 Backbone 来管理它 这很重要 我想保持这样 假设这是我的 HTML 部分 div class pig h1 Harry h1
  • 是什么导致Android的ContentResolver.query()返回null?

    在什么条件下会发生内容解析器 query 返回 null 而不是游标对象 我以前得到过空游标 但刚刚意识到该方法也可以返回 null 不过 我无法追踪发生这种情况的情况 由于今天收到的我的应用程序的用户崩溃报告 我偶然发现了同样的问题 如果
  • 使用 CUDA 进行光线追踪 [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我目前正在实施光线追踪器 由于光线追踪的计算量非常大 而且我无论如何都会研究 CUDA 编程 所以我想知道是否有人有将两者结合起来的经验 我无法真正判断计算模型是否匹配 我想知道
  • Internet Explorer 中的对象预期错误

    该代码在 Firefox 和 Chrome 中正常工作 当页面在 Internet Explorer 中加载时 您会收到错误消息 用户代理 Mozilla 4 0 兼容 MSIE 8 0 Windows NT 6 1 WOW64 Tride
  • 主要Bug,XCAssets文件夹中创建的Sprite Atlas不支持批量渲染

    我开始在 XCAssets 文件夹中使用新的 Sprite Atlas 而不是将我的图集放在项目文件夹中 但是我注意到 当我这样做时 我的节点不再被批量渲染 这导致大量低效的绘制调用 这完全违背了使用图集的目的 需要明确的是 这是我用来获取
  • Cloudant 上使文档过期的设计模式

    因此 当删除文档时 元数据实际上会永久保留 对于像 cloudant 这样的托管服务 每个月都会产生存储费用 我反而想完全清除已删除的文档 我在某处读到过有关您使用的设计模式的信息dbcopy为了将文档放入 当前 数据库 然后定期删除过期的
  • 修补没有 <> 的递归定义列表

    Context 我们都知道递归定义的斐波那契数列 fibs 1 1 zipWith fibs tail fibs gt fibs 1 1 2 3 5 9 13 21 34 55 89 Question 我正在尝试在几个地方 修补 它 以便
  • StrictMode.ThreadPolicy.Builder 的目的和优点?

    我提到StrictMode ThreadPolicy Builder来自安卓文档StrictMode ThreadPolicy Builder 我不清楚StrictMode ThreadPolicy Builder 当我们必须使用这个类时S
  • Map.Entry.comparingByValue().reversed() 的类型是什么? [复制]

    这个问题在这里已经有答案了 我有一个地图条目列表 Map
  • Python-将字符串分割成更小的块并分配一个变量

    是否可以在 python 中拆分字符串并将拆分的每个部分分配给稍后使用的变量 如果可能的话 我希望能够按长度分割 但我不确定使用 len 会如何工作 我尝试过这个 但它没有给我我需要的东西 x this is a string x spli