相关疑难解决方法(0)

Python3 .title()的utf-8字符串

所以我有一个字符串:

天使爱美丽

以字节为单位 b'ame\xcc\x81lie'

在utf-8中,角色结合了前一个角色的重音符号http://www.fileformat.info/info/unicode/char/0301/index.htm

u'ame\u0301lie'

当我这样做:'amélie'.title()在那个字符串上,我得到'AméLie',这对我来说毫无意义.

我知道我可以做一个解决方法,但这是预期的行为还是一个错误?我希望"l"不会被大写.

另一个实验:

  In [1]: [ord(c) for c in 'ame?lie'.title()]
  Out[1]: [65, 109, 101, 769, 76, 105, 101]

  In [2]: [ord(c) for c in 'ame?lie']
  Out[2]: [97, 109, 101, 769, 108, 105, 101]
Run Code Online (Sandbox Code Playgroud)

python python-3.x

5
推荐指数
1
解决办法
597
查看次数

带有例外单词列表的标题格式

我试图想出一些可以为一串单词“加标题”的东西。它应该将字符串中的所有单词大写,除非给定的单词作为参数不大写。但无论如何,第一个单词仍会大写。我知道如何将每个单词大写,但我不知道如何不将例外情况大写。有点迷失从哪里开始,在谷歌上找不到太多。

  def titlemaker(title, exceptions):
      return ' '.join(x[0].upper() + x[1:] for x in title.split(' '))
Run Code Online (Sandbox Code Playgroud)

或者

return title.title()
Run Code Online (Sandbox Code Playgroud)

但我发现撇号后的字母会大写,所以我认为我不应该使用它。关于我应该如何考虑例外情况的任何帮助都会很好

示例: titlemaker('a man and his dogs', 'a and') 应返回 'A Man and His Dog'

python python-3.x

5
推荐指数
1
解决办法
2487
查看次数

标签 统计

python ×2

python-3.x ×2