Tôi đã thử điều này: viết hoa một chuỗi. Có ai có thể cung cấp một tập lệnh/đoạn trích đơn giản cho hướng dẫn không?
Tài liệu Python có chức năng
my_string[:n] + my_string[n].upper[] + my_string[n + 1:]
3 tạo ra vốn đầu tiên. Tôi muốn một cái gì đó như my_string[:n] + my_string[n].upper[] + my_string[n + 1:]
4.
Hỏi ngày 7 tháng 4 năm 2013 lúc 1:53Apr 7, 2013 at 1:53
Viết hoa ký tự n-th và chữ thường phần còn lại như
my_string[:n] + my_string[n].upper[] + my_string[n + 1:]
3 không:def capitalize_nth[s, n]:
return s[:n].lower[] + s[n:].capitalize[]
Đã trả lời ngày 7 tháng 4 năm 2013 lúc 2:22Apr 7, 2013 at 2:22
JFSJFSjfs
383K182 Huy hiệu vàng947 Huy hiệu bạc1618 Huy hiệu đồng182 gold badges947 silver badges1618 bronze badges
my_string[:n] + my_string[n].upper[] + my_string[n + 1:]
Hoặc một phiên bản hiệu quả hơn không phải là thuật toán của họa sĩ của họa sĩ:
''.join[[my_string[:n], my_string[n].upper[], my_string[n + 1:]]]
Đã trả lời ngày 7 tháng 4 năm 2013 lúc 1:56Apr 7, 2013 at 1:56
icktoofayicktoofayicktoofay
124K20 Huy hiệu vàng242 Huy hiệu bạc229 Huy hiệu Đồng20 gold badges242 silver badges229 bronze badges
2
x = "string"
y = x[:3] + x[3].swapcase[] + x[4:]
Đầu ra
strIng
Mã số
Hãy nhớ rằng
my_string[:n] + my_string[n].upper[] + my_string[n + 1:]
6 sẽ đảo ngược trường hợp cho dù đó là thấp hơn hay trên. Tôi đã sử dụng điều này chỉ để hiển thị một cách thay thế.I used this just to show an alternate way.
Đã trả lời ngày 7 tháng 4 năm 2013 lúc 2:00Apr 7, 2013 at 2:00
CPPCoderCppCodercppcoder
21.4K6 Huy hiệu vàng51 Huy hiệu bạc79 Huy hiệu đồng6 gold badges51 silver badges79 bronze badges
1
Đây là giải pháp toàn diện: hoặc bạn nhập một từ duy nhất, một câu dòng hoặc câu nhiều dòng, chữ thứ thứ n sẽ được chuyển đổi thành chữ cái và bạn sẽ lấy lại chuỗi được chuyển đổi làm đầu ra:
Bạn có thể sử dụng mã này:
def nth_letter_uppercase[string,n]:
listofwords = string.split[]
sentence_upper = ''
for word in listofwords:
length = len[word]
if length > [n - 1]:
new_word = word[:n-1] + word[n-1].upper[] + word[n:]
else:
new_word = word
sentence_upper += ' ' + new_word
return sentence_upper
Gọi hàm được xác định ở trên [tôi muốn chuyển đổi chữ cái thứ 2 của mỗi từ thành chữ cái viết hoa]:
string = '''nature is beautiful
and i love python'''
nth_letter_uppercase[string,2]
đầu ra sẽ là:
'nAture iS bEautiful aNd i lOve pYthon'
Đã trả lời ngày 19 tháng 8 lúc 10:28Aug 19 at 10:28
Tôi biết đó là một chủ đề cũ nhưng điều này có thể hữu ích cho ai đó trong tương lai:
def myfunc[str, nth]:
new_str = '' #empty string to hold new modified string
for i,l in enumerate[str]: # enumerate returns both, index numbers and objects
if i % nth == 0: # if index number % nth == 0 [even number]
new_str += l.upper[] # add an upper cased letter to the new_str
else: # if index number nth
new_str += l # add the other letters to new_str as they are
return new_str # returns the string new_str
Đã trả lời ngày 29 tháng 8 năm 2018 lúc 18:53Aug 29, 2018 at 18:53
Zip ZipZiP
Huy hiệu Bạc 911 Huy hiệu Đồng1 silver badge3 bronze badges
Một câu trả lời đơn giản sẽ là:
def make_nth_letter_capital[word, n]:
return word[:n].capitalize[] + word[n:].capitalize[]
Đã trả lời ngày 28 tháng 6 năm 2019 lúc 6:58Jun 28, 2019 at 6:58
1
Bạn có thể dùng:
my_string[:n] + my_string[n].upper[] + my_string[n + 1:]
0Kết quả là:
my_string[:n] + my_string[n].upper[] + my_string[n + 1:]
1Tôi nghĩ rằng đây là đơn giản nhất trong mỗi câu trả lời trên đó ...
Đã trả lời ngày 14 tháng 9 năm 2020 lúc 13:33Sep 14, 2020 at 13:33
my_string[:n] + my_string[n].upper[] + my_string[n + 1:]
2Điều này hoạt động hoàn hảo
Nhím
16.4K2 Huy hiệu vàng13 Huy hiệu bạc33 Huy hiệu đồng2 gold badges13 silver badges33 bronze badges
Đã trả lời ngày 1 tháng 8 năm 2019 lúc 13:27Aug 1, 2019 at 13:27