LEETCODE-DAY8

文章介绍了几种Python中的字符串处理技巧,包括in-place翻转字符串、使用切片进行部分翻转、字符串分割与合并等,展示了如何在LEetCode题目中高效地处理字符串操作。

title: LEETCODE DAY8
date: 2024-02-27 22:16:53
tags:

T1

class Solution:
    def reverseString(self, s: List[str]) -> None:
        """
        Do not return anything, modify s in-place instead.
        """
        left=0
        right=len(s)-1
        while left <= right:
            temp=s[right]
            s[right]=s[left]
            s[left]=temp
            left+=1
            right-=1


python技巧:在列表中交换时有更简洁的方式

s[left],s[right]=s[right],s[left]

T2

python语法:字符串s翻转
s[::-1]

如需对s的部分做反转可以用:s[p:q][::-1]

class Solution:
    def reverseStr(self, s: str, k: int) -> str:
        p=0
        while p<len(s):
            p1=p+k
            s=s[:p]+s[p:p1][::-1]+s[p1:len(s)]
            p=p+2*k
        return s



T3

str1=input()
ans=""
for s in str1:
    if ord("0")<=ord(s)<=ord("9"):
        ans=ans+'number'
    else:
        ans=ans+s
print(ans)
    



T4

python技巧:
python string method :split

Python String join() Method

注意
s_split=s.split()
s_split是一个list,list中每个元素是string

class Solution:
    def reverseWords(self, s: str) -> str:
        s=s.strip()
        s_split=s.split()
        for i in range(len(s_split)):
            s_split[i]=s_split[i][::-1]
        return ' '.join(s_split)

错误不合题意,还要整体再翻转一次

class Solution:
    def reverseWords(self, s: str) -> str:
        s=s.strip()
        s_split=s.split()
        for i in range(len(s_split)):
            s_split[i]=s_split[i][::-1]
        a=' '.join(s_split)
        a=a[::-1]
        return a

T5

k=int(input())
s=str(input())

n=len(s)
s_1=s+s
res=""
for i in range(0,n):
    res+=s_1[n-k+i]
print(res)



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值