python字符串

时间:2018-05-02 11:22:08

标签: python string python-3.x

我正在尝试使用loremipsum软件包生成随机字符串

from loremipsum import generate_paragraph, get_sentences, get_sentence
sentences_count, words_count, paragraph = generate_paragraph()
print(paragraph)

它输出一个带字节前缀的字符串,即每个字都用a或b预先固定。

  

B'ante'b'ut'b'a'b'ut'b'a'。 B'nibh'b'ad'b'in'b'non'b'a'b'dui'   b'nunc'b'a'。 B'diam'b'at'b'a'b'eros'b'a'。 B'quis'b'at'b'a'b'a'   b'a'b'a'b'eros'b'a'b'porta'。 B'orci'b'id'b'mi'b'ut'b'eleifend'   b'fames'b'rutrum'b'at'b'luctus'b'diam'。 B'arcu'b'et'。 B'pede”   b'ut'b'a'b'a'。 B'elit'b'at'b'pretium'b'netus'b'amet'b'nunc'。   B'nunc'b'eu'b'a'b'mi'b'ultricies'b'ut'b'a'b'etiam'b'quis'。   B'nisl'b'mi'。 B'orci'b'id'b'a'。 B'eget'b'ad'b'a'b'a'b'a'b'ad'   b'magna'b'pretium'b'sed'。 B'el''b'eu'b'a'b'congue'b've'b'a'

如何在python 3.6.5中删除这些字节前缀。

2 个答案:

答案 0 :(得分:2)

loremipsum被破坏,因为它们返回一个包含格式化字节的字符串,这使得有意义。要暂时解决此问题,您可以使用此功能:

import re
from loremipsum import generate_paragraph

def fix_loremipsum(loremipsum_string):
    loremipsum_string = re.sub("B'(.*?)'", lambda x: x.group(1).title(), loremipsum_string)
    loremipsum_string = re.sub("b'(.*?)'", lambda x: x.group(1), loremipsum_string)
    return loremipsum_string


sentences_count, words_count, paragraph = generate_paragraph()
paragraph = fix_loremipsum(paragraph)
print(paragraph)

答案 1 :(得分:0)

这对我有用:

import loremipsum as l
l.generator._DICTIONARY = [i.decode('utf8') for i in l.generator._DICTIONARY]
l._GENERATOR = l.Generator()
print(l.get_paragraph())