鱼C论坛

 找回密码
 立即注册
查看: 2059|回复: 7

[已解决]python2.7 对 字符串的处理

[复制链接]
发表于 2017-10-17 01:25:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 要学习 于 2017-10-17 01:27 编辑

我的问题是这样的。

我已经对 字符串进行每13个字符进行换行处理。。
怎样写代码 才能对 处理过的字符再次进行处理呢?

没处理前 结果为:


  1. 20170216231652017021622982201702162124820170216204682017021619392
复制代码



  1. list3='\n'.join(list2[i:i+13] for i in range(0,len(list2),13))
复制代码



第一次处理后 list3的内容是:


  1. 2017021623165
  2. 2017021622982
  3. 2017021621248
  4. 2017021620468
  5. 2017021619392
复制代码


想 再次处理的结果为:


  1. 2017021623        165
  2. 2017021622        982
  3. 2017021621        248
  4. 2017021620        468
  5. 2017021619        392
复制代码


即,每行的第10个字符后加一个tab键

我这样写代码

  1. list4='\t'.join(list2[i:i+10] for i in range(0,len(list2),10))
复制代码


不能得到我想要的结果。。

请教各位老师,要如何写 才能得到我最终想要的结果
最佳答案
2017-10-17 10:09:38
用最简单基础的写的

  1. list2 = '20170216231652017021622982201702162124820170216204682017021619392'

  2. list3='\n'.join(list2[i:i+13] for i in range(0,len(list2),13))

  3. list4 = list3.split('\n')
  4. s =''
  5. for i in list4:
  6.     s += i[0:10] + '\t'+ i[10:13] + '\n'
  7. print(s)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-10-17 09:03:58 | 显示全部楼层
用一个循环,对每个list4结果进行拆解就行了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-17 09:36:27 | 显示全部楼层
BngThea 发表于 2017-10-17 09:03
用一个循环,对每个list4结果进行拆解就行了

谢谢指点

不懂怎么写,
我是想 是不是 把list3的内容 再重新 放到一个新list里,然后再进行对每一行制定位置加tab键处理
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-17 10:09:38 | 显示全部楼层    本楼为最佳答案   
用最简单基础的写的

  1. list2 = '20170216231652017021622982201702162124820170216204682017021619392'

  2. list3='\n'.join(list2[i:i+13] for i in range(0,len(list2),13))

  3. list4 = list3.split('\n')
  4. s =''
  5. for i in list4:
  6.     s += i[0:10] + '\t'+ i[10:13] + '\n'
  7. print(s)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-17 10:55:39 | 显示全部楼层
sunnychou 发表于 2017-10-17 10:09
用最简单基础的写的

简单 明了。。谢谢 老师的帮忙
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-17 14:25:37 | 显示全部楼层
sunnychou 发表于 2017-10-17 10:09
用最简单基础的写的

老师好。。。

最后一行的 空行 怎么删除呢?




  1. 2017021623        165
  2. 2017021622        982
  3. 2017021621        248
  4. 2017021620        468
  5. 2017021619        392

  6. >>>
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-18 09:04:43 | 显示全部楼层
要学习 发表于 2017-10-17 14:25
老师好。。。

最后一行的 空行 怎么删除呢?

那就单独处理一下,for循环前三个元素最后一个特殊处理
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-18 09:32:50 | 显示全部楼层
要学习 发表于 2017-10-17 14:25
老师好。。。

最后一行的 空行 怎么删除呢?
  1. list2 = '20170216231652017021622982201702162124820170216204682017021619392'

  2. list3='\n'.join(list2[i:i+13] for i in range(0,len(list2),13))

  3. list4 = list3.split('\n')
  4. print(len(list4))
  5. s = ''
  6. # for i in list4:
  7. #     s += i[0:10] + '\t'+ i[10:13] + '\n'
  8. # print(s)
  9. for i in range(len(list4) - 1):
  10.     s += list4[i][0:10] + '\t' + list4[i][10:13] + '\n'
  11. #单独处理最后一个
  12. s += list4[-1][0:10] + '\t' + list4[-1][10:13]
  13. print(s, end='')

复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-3-3 03:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表