脚本专栏 
首页 > 脚本专栏 > 浏览文章

Python字符串的15个基本操作(小结)

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

1. 字符串的翻转

利用切片

str1 = "hello world!"
print(str1[::-1])

利用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. 字符串的拆分

可以使用split()函数,括号内可添加拆分字符,默认空格,返回的是列表

str1 = "i love you!"
print(str1.split())
# print(str1.split('\')) 则是以\为分隔符拆分

去除字符串两边的空格,返回的是字符串

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")
上一篇:python可视化分析的实现(matplotlib、seaborn、ggplot2)
下一篇:matplotlib交互式数据光标mpldatacursor的实现
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 SiteMap