Python字符串的15个基本操作

1. 字符串的翻转

  1. 利用切片

    str1 = "hello world!"
    print(str1[::-1])
    
  2. 利用reduce函数实现

    from functools import reduce
    str1 = "hello world!"
    print(reduce(lambda  x, y : y+x, str1))
    

2. 判断字符串是不是回文串

str1 = "123455"
def fun(string):
    print("%s" % string == string[::-1] and "YES" or "NO")
if __name__ == '__main__':
    fun(str1)

3. 单词大小写

str1 = "i love you!"
print(str1.title())# 单词首字母大写
print(str1.upper())# 所有字母大写
print(str1.lower())# 所有字母小写
print(str1.capitalize())# 字符串首字母大写

4. 字符串的拆分

  1. 可以使用split()函数,括号内可添加拆分字符,默认空格,返回的是列表
    str1 = "i love you!"
    print(str1.split())
    # print(str1.split('\')) 则是以\为分隔符拆分
    
  2. 去除字符串两边的空格,返回的是字符串
    str1 = "  i love you!  "
    print(str1.strip())
    

5. 字符串的合并

返回的是字符串类型

str1 = ["123", "123", "123"]
print(''.join(str1))

6. 将元素进行重复

str1 = "python"
list1 = [1, 2, 3]
# 乘法表述
print(str1 * 2)
print(list1 * 2)
# 输出
# pythonpython
# [1, 2, 3, 1, 2, 3]

#加法表述
str1 = "python"
list1 = [1, 2, 3]
str1_1 = ""
list1_1 = []
for i in range(2):
    str1_1 += str1
    list1_1.append(list1)
print(str1_1)
print(list1_1)
# 输出同上

7. 列表的拓展

# 修改每个列表的值
list1 = [2, 2, 2, 2]
print([x * 2 for x in list1])
# 展开列表
list2 = [[1, 2, 3], [4, 5, 6], [1]]
print([i for k in list2 for i in k])
# 输出 [1, 2, 3, 4, 5, 6, 1]

8. 两个数交换

x = 1
y = 2
x, y = y, x

9. 统计列表中元素出现的频率

调用collections中的Counter类

from collections import Counter
list1 = ['1', '1', '2', '3', '1', '4']
count = Counter(list1)
print(count)
# 输出 Counter({'1': 3, '2': 1, '3': 1, '4': 1})
print(count['1'])
# 输出 3
print(count.most_common(1))# 出现最多次数的 
# [('1', 3)]

10. 将数字字符串转化为数字列表

str1 = "123456"
# 方法一
list_1 = list(map(int, str1))
#方法二
list_2 = [int(i) for i in str1]

11. 使用enumerat()函数获取索引数值对

str1 = "123456"
list1 = [1, 2, 3, 4, 5]
for i, j in enumerate(str1):
    print(i, j)
'''
输出
0 1
1 2
2 3
3 4
4 5
5 6
'''
str1 = "123456"
list1 = [1, 2, 3, 4, 5]
for i, j in enumerate(list1):
    print(i, j)
# 输出同上

12. 计算代码执行消耗的时间

import time
start = time.time()
for i in range(1999999):
    continue
end = time.time()
print(end - start)
# 输出 0.08042168617248535

13. 检查对象的内存占用情况

sys.getsizeof()函数

import sys
str1 = "123456"
print(sys.getsizeof(str1))
# 输出 55

14. 字典的合并

dirt1 = {'a':2, 'b': 3}
dirt2 = {'c':3, 'd': 5}
# 方法一
combined_dict = {**dirt1, **dirt2}
print(combined_dict)
# 输出 {'a': 2, 'b': 3, 'c': 3, 'd': 5}
# 方法二
dirt1 = {'a':2, 'b': 3}
dirt2 = {'c':3, 'd': 5}
dirt1.update(dirt2)
print(dirt1)
# 输出同上

15. 检查列表内元素是不是都是唯一的

list1 = [1, 2, 3, 4, 5, 6]
print('%s' % len(list1) == len(set(list1)) and "NO" or "YES")
  • 17
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 18
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JdiLfc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值