将字符串拆分为固定长度的块并在Python中使用它们的最佳方法是什么?

失落的机器人

我正在使用以下内容从文本文件中读取一行:

   file = urllib2.urlopen("http://192.168.100.17/test.txt").read().splitlines()

并使用telnetlib.write命令将其输出到16个字符的LCD显示屏。如果读取的行长于16个字符,我想将其分解为16个字符长的字符串,并在一定的延迟(例如10秒)后将每个部分推出,一旦完成,代码应移至下一行输入文件,然后继续。

我曾尝试搜索各种解决方案并阅读itertools等。但是,我对Python的理解不足以使所有事情变得复杂,而如果使用if then else可能会引起混乱的混乱状态,那是一种非常漫长的方式把我绑在一起!

对我来说,做我想做的最好的方法是什么?

rlms

一种解决方案是使用此功能:

def chunkstring(string, length):
    return (string[0+i:length+i] for i in range(0, len(string), length))

此函数使用生成器理解来返回生成器。生成器返回从0 +块的长度的倍数到块的长度+块的长度的倍数切片的字符串。

您可以像列表,元组或字符串-那样遍历生成器for i in chunkstring(s,n):,或使用将其转换为列表(例如)list(generator)生成器比列表更有效地使用内存,因为生成器可以按需生成元素,而不是一次生成所有元素,但是它们缺少诸如索引之类的某些功能。

此生成器最后还包含任何较小的块:

>>> list(chunkstring("abcdefghijklmnopqrstuvwxyz", 5))
['abcde', 'fghij', 'klmno', 'pqrst', 'uvwxy', 'z']

用法示例:

text = """This is the first line.
           This is the second line.
           The line below is true.
           The line above is false.
           A short line.
           A very very very very very very very very very long line.
           A self-referential line.
           The last line.
        """

lines = (i.strip() for i in text.splitlines())

for line in lines:
    for chunk in chunkstring(line, 16):
        print(chunk)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用php将字符串拆分为非固定长度的块?

来自分类Dev

将字符串拆分为固定长度的块并在Raku中写在单独的行中

来自分类Dev

如何将字符串拆分为固定长度的块,而不是在单词之间?

来自分类Dev

将Python中的字符串拆分为长度固定但右对齐的块

来自分类Dev

如何将字符串拆分为固定长度的行?

来自分类Dev

在Python中生成特定长度的随机字符串的最佳方法是什么?

来自分类Dev

是否有更快的方法将字符串拆分为给定长度的子字符串?

来自分类Dev

将字符串拆分为不同长度的块

来自分类Dev

将字符串拆分为固定大小的块

来自分类Dev

将字符串拆分为给定长度的子字符串,其余部分

来自分类Dev

如何在 C 中将字符串拆分为固定长度的小块以从 Arduino BLE 发送?

来自分类Dev

使用递归在Python中生成给定长度的所有二进制字符串的最佳方法是什么?

来自分类Dev

使用gulp将业力测试拆分为可运行块的最佳方法是什么?

来自分类Dev

将字符串变量拆分为多个变量,并在SPSS中使用暂存变量

来自分类Dev

将字符串变量拆分为多个变量,并在SPSS中使用暂存变量

来自分类Dev

根据固定长度将文件中的每一行拆分为带有分隔符的子字符串

来自分类Dev

如何将子字符串拆分为多个块并使用 C# 将它们输入到表中?

来自分类Dev

将字符串拆分为连续、重叠的单词列表的最pythonic 方法是什么

来自分类Dev

将JavaScript(nodeJS)字符串拆分为固定大小的块

来自分类Dev

从动态字符串Vb.net拆分固定长度的字符串

来自分类Dev

使用sscanf读取固定长度的字符串

来自分类Dev

生成固定长度的随机字符串(使用C)

来自分类Dev

使用Java压缩字符串以固定长度

来自分类Dev

Python格式将整数转换为固定长度的字符串

来自分类Dev

TensorFlow字符串:它们是什么以及如何使用它们

来自分类Dev

在C#中使用String.Split()方法或Linq Lambda表达式从给定字符串中查找分割字符长度的最佳方法是什么

来自分类Dev

在lang.h中定义字符串,并在WM_PAINT中使用它们?

来自分类Dev

如何使用python将字符串拆分为dict?

来自分类Dev

将不特定长度的字符串拆分为列

Related 相关文章

  1. 1

    如何使用php将字符串拆分为非固定长度的块?

  2. 2

    将字符串拆分为固定长度的块并在Raku中写在单独的行中

  3. 3

    如何将字符串拆分为固定长度的块,而不是在单词之间?

  4. 4

    将Python中的字符串拆分为长度固定但右对齐的块

  5. 5

    如何将字符串拆分为固定长度的行?

  6. 6

    在Python中生成特定长度的随机字符串的最佳方法是什么?

  7. 7

    是否有更快的方法将字符串拆分为给定长度的子字符串?

  8. 8

    将字符串拆分为不同长度的块

  9. 9

    将字符串拆分为固定大小的块

  10. 10

    将字符串拆分为给定长度的子字符串,其余部分

  11. 11

    如何在 C 中将字符串拆分为固定长度的小块以从 Arduino BLE 发送?

  12. 12

    使用递归在Python中生成给定长度的所有二进制字符串的最佳方法是什么?

  13. 13

    使用gulp将业力测试拆分为可运行块的最佳方法是什么?

  14. 14

    将字符串变量拆分为多个变量,并在SPSS中使用暂存变量

  15. 15

    将字符串变量拆分为多个变量,并在SPSS中使用暂存变量

  16. 16

    根据固定长度将文件中的每一行拆分为带有分隔符的子字符串

  17. 17

    如何将子字符串拆分为多个块并使用 C# 将它们输入到表中?

  18. 18

    将字符串拆分为连续、重叠的单词列表的最pythonic 方法是什么

  19. 19

    将JavaScript(nodeJS)字符串拆分为固定大小的块

  20. 20

    从动态字符串Vb.net拆分固定长度的字符串

  21. 21

    使用sscanf读取固定长度的字符串

  22. 22

    生成固定长度的随机字符串(使用C)

  23. 23

    使用Java压缩字符串以固定长度

  24. 24

    Python格式将整数转换为固定长度的字符串

  25. 25

    TensorFlow字符串:它们是什么以及如何使用它们

  26. 26

    在C#中使用String.Split()方法或Linq Lambda表达式从给定字符串中查找分割字符长度的最佳方法是什么

  27. 27

    在lang.h中定义字符串,并在WM_PAINT中使用它们?

  28. 28

    如何使用python将字符串拆分为dict?

  29. 29

    将不特定长度的字符串拆分为列

热门标签

归档