首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何格式化python中包含标记的列表

如何格式化python中包含标记的列表
EN

Stack Overflow用户
提问于 2018-02-19 22:53:17
回答 2查看 63关注 0票数 2

我有一个名为记号的列表,并且希望格式化这个列表,以便当我打印它时,它是人类可读的。

名单:

代码语言:javascript
运行
AI代码解释
复制
tokens = ['<h1>','Hello','World','</h1>','<p>','Welcome','to','this','planet','</p>']

我希望输出一旦格式化后会变成什么样子:

标题:你好世界 欢迎来到这个星球

到目前为止,我已经尝试过:

我首先尝试替换<h1><p>标记,以便在输出时显示“标题:”和“段落:”。我使用FOR循环循环遍历所有令牌,并找到要替换的正确标记:

代码语言:javascript
运行
AI代码解释
复制
for token in tokens:
# comparing strings
elif token == '<h1>':
   print(token.replace('<h1>', 'Heading: '))
elif token == '<p>':
   print(token.replace('<p>', 'Paragraph: '))

我需要做的下一部分是打印出<h1>标记和<p>标记之间的句子。为此,我想创建一个方法,一般的伪代码是:

代码语言:javascript
运行
AI代码解释
复制
def between(tokens, tag, endTag)
    if token is between tag and endTag
        print the sentence 

我真的不知道如何让这个方法在python中工作,并且尝试了这样的方法:

代码语言:javascript
运行
AI代码解释
复制
def between(tokens, tag, endTag):
sentence = []
for token in tokens:
    if(token > tag and token < endTag):
        sentance.append(token)
return sentance

但我知道,如果声明没有意义,而且总体上也不可行。如何解决这个问题并正确格式化列表?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-02-19 23:00:16

您可以创建一个人类可读的标签名字典,并将标签替换为它的名称。如果令牌不是标记,则不会替换它。

代码语言:javascript
运行
AI代码解释
复制
tags = {"<h1>" : 'Heading1: ', "</h1>" : "\n", 
        "<p>" : "Paragraph: ", "</p>" : "\n", ... }
new_tokens = [tags.get(token.lower(),token) for token in tokens]
print("".join(new_tokens))
#Heading1: HelloWorld
#Paragraph: Welcometothisplanet

.lower()函数调用使查找不区分大小写.

票数 2
EN

Stack Overflow用户

发布于 2018-02-19 23:07:47

你可以试试这个:

代码语言:javascript
运行
AI代码解释
复制
" ".join('@#'.join([e for e in tokens if '</' not in e]).replace("<h1>","\n Heading:").replace("<p>","\n Paragraph:").split("@#"))

考虑到您的字符串没有@#。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48879453

复制
相关文章
如何在Linux中将文本内容追加到文件末尾?
在Linux中处理配置文件时,有时您需要将诸如配置参数之类的文本附加到现有文件中。追加只是意味着将文本添加到文件的末尾。
用户6543014
2020/03/06
14.7K0
如何在Linux中将文本内容追加到文件末尾?
C# FileStream StreamWrite追加到文本文件末尾
若以上代码编译有问题,可下载项目文件直接编译: http://download.csdn.net/source/3465946
全栈程序员站长
2022/07/05
1.3K0
linux中将文本附加到文件末尾
在 Linux 中使用配置文件时,有时需要将诸如配置参数之类的文本附加到现有文件中。追加只是意味着将文本添加到文件的末尾或底部。 使用>>运算符附加文本 >>操作者输出重定向到一个文件,如果该文件不存在,则创建,但如果它存在,则输出将在文件的末尾追加。 例如,你可以使用echo 命令将文本附加到文件的末尾 # echo "rumenz.com" >> /root/rumenz.txt 或者,你可以使用 printf命令(不要忘记使用\n字符添加下一行) # printf "rumenz.com\n" >>
玖柒的小窝
2021/10/21
1.6K0
linux中将文本附加到文件末尾
在 Linux 中使用配置文件时,有时需要将诸如配置参数之类的文本附加到现有文件中。追加只是意味着将文本添加到文件的末尾或底部。 使用>>运算符附加文本 >>操作者输出重定向到一个文件,如果该文件不存在,则创建,但如果它存在,则输出将在文件的末尾追加。 例如,你可以使用echo 命令将文本附加到文件的末尾 # echo "rumenz.com" >> /root/rumenz.txt 或者,你可以使用 printf命令(不要忘记使用\n字符添加下一行) # printf "rumenz.com\n" >
入门笔记
2022/06/02
1.2K0
EditText把光标放在文本的末尾处
当手动设置EditText的文本时,光标会恢复到最前面,可以再监听中设置光标到末尾处,这样就好了,大家有什么问题可以在下方留言。
程思扬
2022/01/11
5960
oeasy教您玩转vim - 8 - # 追加文本
追加文本 回忆上节课内容🤔 我们这次深入了 i 命令 i 在当前的光标之前插入 I 在本行文本的最前面插入 还有一些常用的编辑命令 . 重做 u 撤销 ctrl+r 还原 关于插入,还有什么讲究吗?🤔 类似的命令 还有没有和插入相关的的命令呢??🤔 相类似的命令一定在手册的同一个地方!🤨 我们得还在插入命令的附近找找 插入命令 首先我们找到插入命令的帮助📕 :help insert 简写为 :h i 我们向上翻可以找到 a 命令。 追加文本 i 和 a 都是 Insert mode com
oeasy
2021/08/07
3790
Android 各视图的大小
前言 常用高度 名称 值 状态栏高度 25dp ActionBar高度 48dp logo 名称 值 RATIO drawable-xxxhdpi 192×192 4x drawable-xxhdpi 144×144 3x drawable-xhdpi 96×96 2x drawable-hdpi 72×72 1.5x drawable-mdpi 48×48 1x 应用商店 512×512 ios常用的尺寸 ios常用的尺寸
码客说
2019/10/22
6840
Mysql在字段现有内容后面追加内容
在发布系统中所有前置任务里面增加一些内容,发布系统中大约有200+的项目,手动是不可能手动的,只有在数据库中操作了。
行 者
2019/12/05
3K0
为什么Python在列表和元组的末尾允许
如果列表,元组或python字典的字面值分布在多行中,则更容易添加更多元素,因为不必记住在上一行中添加逗号。这些行也可以重新排序,而不会产生语法错误。
py3study
2020/01/16
6730
3分钟短文 | Laravel 给所有视图追加公共数据
这又是一个深入laravel运行方式的问题,面对数百张页面,不可能所有的简单的页面 复杂的页面都继承了某些公用的layout数据。那么如何做到给所有视图都追加公共数据呢?本文就来说一说。
程序员小助手
2020/08/26
7490
Android视图绑定ViewBinding的使用
首先感谢这位读者的提议,让我抽出时间细看视图绑定的内容,也打算在项目中使用该功能。当然,还有其他读者提议的内容我已记录,后期有时间也会陆续更新。话不多说,我们开始学习吧!
SoullessCoder
2021/09/07
2.6K0
Android网格视图(GridView)
GridView的一些属性: 1.android:numColumns=”auto_fit”   //GridView的列数设置为自动,也可以设置成2、3、4…… 2.android:columnWidth=”90dp "       //每列的宽度,也就是Item的宽度 3.android:stretchMode=”columnWidth"//缩放与列宽大小同步 4.android:verticalSpacing=”10dp”          //两行之间的边距 5.android:horizontal
欢醉
2018/01/22
1.6K0
Android网格视图(GridView)
Android视图绑定ViewBinding的使用
首先感谢这位读者的提议,让我抽出时间细看视图绑定的内容,也打算在项目中使用该功能。当然,还有其他读者提议的内容我已记录,后期有时间也会陆续更新。话不多说,我们开始学习吧!
SoullessCoder
2020/03/20
2.8K0
Android视图绑定ViewBinding的使用
Python追加Excel追加数据
前面我分享了 Excel 的读写:Python 实现 Excel 的读写操作:https://bornforthis.cn/column/pyauto/auto_base05.html
AI悦创
2022/07/17
2.9K0
Linux常用命令05 - 文本追加到文件中
重定向允许您捕获命令的输出,并将其作为输入发送到另一个命令或文件。 重定向运算符将输出追加到给定文件。
叉叉敌
2020/04/21
6K0
Android 视图绑定 ViewBinding
我们以前获取xml中的View,通常通过findViewById但是样板代码太多,而且容易引用错误发生崩溃。
zinyan.com
2022/12/07
1.6K0
android UiAutomator在清除文本时遇到中文的解决办法
本人在做app测试的时候,需要验证输入框的内容是否能保存成功,在使用过程中发现,clearTextField();方法并不好用,只能清除第一个词或字,如果算纯英文的话就没有问题,初步判断可能是因为中文无法全选的原因,所以想了一个办法,写了一个方法。分享出来。
FunTester
2020/04/03
8110
解决android中EditText设置末尾省略号不生效的情况
android默认只有在文字不可编辑的状态下才可以显示这些效果,但是EditText重写了这个属性,使得文字默认都是可以编辑的。
乱码三千
2021/07/29
2.8K0
点击加载更多

相似问题

程序因未知原因崩溃

10

C++程序因某种未知原因而崩溃

14

Qt5 C++应用程序因未知原因崩溃

12

OFBiz因未知原因挂起

11

因未知原因返回False

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档