- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章python中文本字符处理的简单方法记录由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
今天,跟大家分享一下我做小项目时想出来的文本字符处理的方法,希望能对大家有所帮助.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
strings
=
"我,是‘c|s;d|n!的:程【序】员#m,r&.;p'a#n?_&学?狂"
#将字符串设置好
def
string_process(string):
#定义一个字符处理函数,设置参数string,是有待处理的字符串。
print
(
"python使我快乐!!"
)
print
(
"未处理的字符串:"
,string)
varchar
=
'‘'
“”:
#,!【】,&#|?|,&;;?:"'#人为设定字符集合
ls
=
[]
#定义一个列表用于存储拆散的字符
for
s
in
string:
ls.append(s)
#将字符串拆散存进列表中
for
element
in
ls:
if
element
in
varchar:
#如果在字符集合内发现,则从列表中删除
ls.remove(element)
string
=
''
#定义字符串
for
l
in
ls:
#将列表中拆散的元素组合回去。
string
=
string
+
l
print
(
"处理后的字符串:"
,string)
#得到处理结果
string_process(string
=
strings)
#调用函数,传入实参给形参。
|
运行结果,如下图:
对于处理文本字符的思想在代码中已经说明,关于代码的解释在注释中也写出了。我们把它通过函数进行封装,当我们需要处理文本字符的时候,通过调用函数就可以实现文本字符处理了。当然,调用函数处理字符时需要得到string返回值以及注释掉print,因为我们如果是在循环中调用,没必要全部打印一遍,影响视觉对文本的分析。即修改代码如下图:
对于上面的文本处理代码,我又做了一次更新,可以增加新的字符或者是字符串来更新字符集合,更加方便处理文本中的字符.
改进后的代码,如下图:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
strings
=
"我,是‘c|s;d|n!的:程【序】员#m,r&.;②p'「(a#n」?_&学?狂..."
#将字符串设置好
def
process(string):
#定义一个字符处理函数,设置参数string,是有待处理的字符串。
print
(
"python使我快乐!!"
)
print
(
"未处理的字符串:"
,string)
varchar
=
'‘'
“”:
#,!【】,&#|?|,&;;?:"'#人为设定字符集合
var_ls
=
[]
for
var
in
varchar:
var_ls.append(var)
print
(
"这是当前的字符集合:"
,var_ls)
while
true:
want
=
str
(
input
(
"是否需要增加新的字符/字符集合?(yes or no)"
))
if
want
=
=
'yes'
:
add_varchar
=
str
(
input
(
"请输入需要增加的新字符/字符集合:"
))
for
var
in
add_varchar:
var_ls.append(var)
print
(
"更新后的字符集合:"
,var_ls)
elif
want
=
=
'no'
:
break
else
:
print
(
"输入有误!!请重试!!"
)
continue
ls
=
[]
#定义一个列表用于存储拆散的字符
for
s
in
string:
ls.append(s)
#将字符串拆散存进列表中
for
element
in
ls[:]:
if
element
in
var_ls:
#如果在字符集合内发现,则从列表中删除
ls.remove(element)
elif
element
not
in
var_ls:
continue
string
=
''
#定义字符串
for
l
in
ls:
#将列表中拆散的元素组合回去。
string
=
string
+
l
print
(
"处理后的字符串:"
,string)
#得到处理结果
process(string
=
strings)
#调用函数,传入实参给形参。
|
代码的解释在注释中写了,大家如果对代码不理解可以和我私信探讨.
运行结果,如下图:
到此这篇关于python中文本字符处理的文章就介绍到这了,更多相关python文本字符处理内容请搜索我以前的文章或继续浏览下面的相关文章希望大家以后多多支持我! 。
原文链接:https://blog.csdn.net/weixin_43408020/article/details/114789536 。
最后此篇关于python中文本字符处理的简单方法记录的文章就讲到这里了,如果你想了解更多关于python中文本字符处理的简单方法记录的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 要求提供代码的问题必须表现出对所解决问题的最低限度理解。包括尝试过的解决方案、为什么它们不起作用,以及预
为什么在 C# 中添加两个 char 结果是 int 类型? 例如,当我这样做时: var pr = 'R' + 'G' + 'B' + 'Y' + 'P'; pr 变量变为 int 类型。我希望它是
下面的代码可以编译,但 char 类型的行为与 int 类型的行为不同。 特别是 cout ::ikIsX >() ::ikIsX >() ::ikIsX >() using names
我正在寻找一个正则表达式,它可以匹配长度为 1 个或多个字符但不匹配 500 的内容。这将在 Rails 路由文件中使用,特别是用于处理异常。 路线.rb match '/500', to: 'err
对于 C 编程作业,我正在尝试编写几个头文件来检查所谓的“X 编程语言”的语法。我最近才开始,正在编写第一个头文件。这是我编写的代码: #ifndef _DeclarationsChecker_h_
为什么扩展的 ascii 字符(â、é 等)被替换为 字符? 我附上了一张图片...但我正在使用 PHP 从 MySQL 中提取数据,其中一些位置有扩展字符...我使用的是 Arial 字体。 您可以
我有一个与 R 中的断线相关的简单问题。 我正在尝试粘贴,但在获取(字符/数字)之间的断线时遇到问题。请注意,这些值包含在向量中(V1=81,V2=55,V3=25)我已经尝试过这段代码: cat(p
如何将 ANSI 字符 (char) 转换为 Unicode 字符 (wchar_t),反之亦然? 是否有用于此目的的任何跨平台源代码? 最佳答案 是的,在 中你有mbstowcs()和 wcsto
函数 fromCharCode 不适用于国际 ANSI 字符。例如,对于 ID 为 192 到 223 的俄语 ANSI (cp-1251) 字符,它返回特殊字符。如何解决这个问题? 我认为,需要将A
如果不喜欢,我想隐藏 id,但不起作用 SELECT * FROM character, character_actor WHERE character.id NOT LIKE character_a
现在这个程序成功地反转了键盘输入的单词。但是我想在我反转它之前“保存”指针中的单词,所以我可以比较两者,反转的和“原始的”,并检查它们是否是回文。我还没有太多经验,可能会出现比我知道的更多的错误,但我
Memcpy 和 memcmp 函数可以接受指针变量吗? char *p; char* q; memcpy(p,q,10); //will this work? memcmp(p,q,10); //w
恐怕我对一个相当过饱和的主题的细节有疑问,我搜索了很多,但找不到一个明确的答案来解决这个特定的明显-imho-重要的问题: 使用UTF-8将byte[]转换为String时,每个字节(8bit)都变成
我有一个奇怪的问题。我需要从 stat 命令打印输出字符串。 我已经编写了获取一些信息的代码。 import glob import os for file in glob.glob('system1
我正在使用 Java 并具有其值如下所示的字符串, String data = "vale-cx"; data = data.replaceAll("\\-", "\\-\\"); 我正在替换其中的“
String urlParameters = "login=test&password=te&ff"; 我有一个String urlParams,& - 是密码的一部分,如何使其转义,从而不被识别为分
大家好,我只想从此字符串中提取第一个字母: String str = "使 徒 行 傳 16:31 ERV-ZH"; 我只想获取这些字符: 使 徒 行 傳 并且不包括 ERV-ZH 仅数
这个问题已经有答案了: Crash or "segmentation fault" when data is copied/scanned/read to an uninitialized point
所以, 我有一个字符**;它本质上是一个句子,带有指向该句子中每个单词的指针;即 'h''i''\0''w''o''r''l''d''\0''y''a''y''!''\0' 在这种情况下,我希望使用可
这个问题在这里已经有了答案: Using quotation marks inside quotation marks (12 个答案) 关闭 7 年前。 如何打印 " 字符? 我知道打印 % 符号
我是一名优秀的程序员,十分优秀!