找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 14896|回复: 6

[问题求助] 求助Python字符串分割

[复制链接]
发表于 2024-8-26 12:04:13 | 显示全部楼层 |阅读模式
文件中的字符串格式相同,node:9000006 id:0x0001 proxy:0x0000 info:0x40
要求把每行:后的字符串提取出来,变成9000006 0x0001 0x0000 0x40存储在变量中。
  1. import os
  2. file_path = os.path.abspath(r'C:\Users\14232\Downloads\topo.txt')
  3. #打开文件
  4. print("文件路径:",file_path)
  5. with open(file_path,'r') as file:
  6.     content = file.read()
  7.     print("文件内容")
  8.     print(content)
  9.     values = []
  10.     with open(file_path, 'r', encoding='utf-8') as file:
  11.         for line in file:
  12.             # 去掉行末的换行符并以 ':' 分割
  13.             parts = line.strip().split(':')
  14.             if len(parts) > 1:
  15.                 # 将 ':' 后面的部分储存到变量中
  16.                 value = parts[1].strip()  # 去掉可能的空格
  17.                 values.append(value)
  18.                 for value in values:
  19.                     print(value)
复制代码
该如何写
发表于 2024-8-26 13:00:41 | 显示全部楼层
啊,除了重复print外,这代码不行么?
 楼主| 发表于 2024-8-26 13:37:18 | 显示全部楼层
回复 2# Five66


    不行,代码输出的是9000006 id,和我要的效果不一样
 楼主| 发表于 2024-8-26 13:37:48 | 显示全部楼层
回复 2# Five66


    大佬能教教我在,怎么写吗
发表于 2024-8-26 13:43:04 | 显示全部楼层
本帖最后由 aloha20200628 于 2024-8-26 14:10 编辑

回复 1# 占卜家

  1. import re
  2. for line in open(r'C:\Users\14232\Downloads\topo.txt', 'r', -1):   
  3.         if line:=line.strip():
  4.                 nl = re.split(':| ', line, re.M)
  5.                 print(' '.join(nl[1::2]))
复制代码

python 3.8+开始支持海象运算符 :=
若是较低版本可用以下代码

  1. import re
  2. for line in open(r'C:\Users\14232\Downloads\topo.txt', 'r', -1):   
  3.         line = line.strip()
  4.         if line:
  5.                 nl = re.split(':| ', line, re.M)
  6.                 print(' '.join(nl[1::2]))
复制代码
发表于 2024-8-26 13:45:32 | 显示全部楼层
本帖最后由 Five66 于 2024-8-26 13:47 编辑

回复 4# 占卜家


    啊,原来不是一行一个的?试试再用空格split一下吧
 楼主| 发表于 2024-8-26 14:35:25 | 显示全部楼层
回复 5# aloha20200628


    感谢大佬,已解决
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-16 20:58 , Processed in 0.018723 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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