如何从单词中删除一个字符,但仅限于它在开头或结尾?

时间:2014-05-07 12:38:46

标签: python

def data_from_file(filename):

    list1 = []

    infile = open(filename, 'r', encoding="utf-8")

    lines = infile.read().split()
    lines = " ".join(lines)
    lines1 = lines.replace("." , "")
    lines2 = lines1.replace(",", "")
    lines3 = lines2.replace("\n", "")
    lines4 = lines3.replace("\"", "")
    lines5 = lines4.replace("\\", "")
    lines6 = lines5.replace("\"", "")
    lines7 = lines6.replace(":", "")
    lines8 = lines7.replace(";", "")

    lines9 = lines8.split()

    for i in lines9:
        if i.isalpha():
            list1.append(i)
    return list1

嗨代码新手在这里,

基本上我需要做的是从某个文件中读取数据。然后,我需要删除诸如(&#34 ;;:。,\ n')之类的字符,但前提是它们位于单词的开头或结尾。目前我的程序删除了这些字符的每个实例。例如,我希望能够转动"汽车"进入汽车,但ca" rs将保持为ca" rs

程序的下一部分只涉及在每个位置选择具有字母数字字符的单词。这部分工作正常。

对此的任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:12)

str.strip做你想做的事:

>>> 'potato'.strip('o')
'potat'

如果您只想分别向左或向右取下,还有str.lstripstr.rstrip