我在用Python将字符串改为大写时遇到了问题。在我的研究中,我得到了string.ascii_capital,但它不起作用。

以下代码:

 >>s = 'sdsd'
 >>s.ascii_uppercase

给出以下错误消息:

Traceback (most recent call last):
  File "<console>", line 1, in <module>
AttributeError: 'str' object has no attribute 'ascii_uppercase'

我的问题是:如何在Python中将字符串转换为大写?


当前回答

您可以使用大写()将第一个字母大写,如下所示:

test = "this is a sentence."

print(test.capitalize()) # Here

输出:

This is a sentence.

其他回答

使用str.upper():

>>> s = 'sdsd'
>>> s.upper()
'SDSD'

请参见字符串方法。

要获取字符串的大写版本,可以使用str.upper:

s = 'sdsd'
s.upper()
#=> 'SDSD'

另一方面,string.ascii_capital是一个包含所有大写ascii字母的字符串:

import string
string.ascii_uppercase
#=> 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'

用于将句子中每个单词的首字母转换为大写

s = 'this is a sentence'

str.title(s)

>>> 'This Is A Sentence'
s = 'sdsd'
print (s.upper())
upper = raw_input('type in something lowercase.')
lower = raw_input('type in the same thing caps lock.')
print upper.upper()
print lower.lower()

对于简单字符串操作的问题,dir内置函数非常有用。它提供了参数的方法列表,例如,dir(s)返回包含upper的列表。