10 个 Python String 字符串的常用技巧,大大地提升我们的开发效率,终于有时间陪女朋友了

简介: 10 个 Python String 字符串的常用技巧,大大地提升我们的开发效率,终于有时间陪女朋友了

Python 是一门可读性和简洁性都非常好的编程语言,经常可以用简单的一行代码即实现其他语言需要多行代码才可以实现的功能。在实际开发过程中,我们经常会使用到 String 字符串,今天,就让我们来介绍 Python 开发过程中的一些常用技巧,大大得提高我们的开发效率


1. 反转字符串


在开发过程中,经常需要用到字符串的反转,这里我们可以采用切片操作实现字符串的反转:



# Reversing a string using slicing
my_string = "ABCDE"
reversed_string = my_string[::-1]
print(reversed_string)
# Output
# EDCBA


2. 判断两个字符串是否是字谜(Anagrams)


字谜(Anagrams)是指将一个单词打乱其字母顺序,重新排列为一个新的单词。


Counter正好可以用于解决这个问题,因为如果两个字符串的 Counter 对象相等,就表示它们就是字谜,因为包含相同元素且元素数量都相同。


示例如下:


from collections import Counter
str_1, str_2, str_3 = "acbde", "abced", "abcda"
cnt_1, cnt_2, cnt_3  = Counter(str_1), Counter(str_2), Counter(str_3)
if cnt_1 == cnt_2:
    print('1 and 2 anagram')
if cnt_1 == cnt_3:
    print('1 and 3 anagram')


3. 实现首字母大写


这个小技巧是让字符串中每个单词的首字母变为大写,通过方法 title() 实现:



my_string = "my name is chaitanya baweja"
# using the title() function of string class
new_string = my_string.title()
print(new_string)
# Output
# My Name Is Chaitanya Baweja


4. 查找字符串中唯一元素


这个技巧是查找字符串中不重复的元素有哪些,通过集合 set 来实现:



my_string = "aavvccccddddeee"
# converting the string to a set
temp_set = set(my_string)
# stitching set into a string using join
new_string = ''.join(temp_set)
print(new_string)


5. 打印 n 次字符串或者列表


这个技巧通过乘法即可实现打印多次的操作:



n = 3 # number of repetitions
my_string = "abcd"
my_list = [1,2,3]
print(my_string*n)
# abcdabcdabcd
print(my_string*n)
# [1,2,3,1,2,3,1,2,3]


这个技巧比较有趣的应用是定义一个包含 n 个重复的常数元素的列表,如下所示:


n = 4
my_list = [0]*n 
# [0, 0, 0, 0]


6. 交换两个变量


Python 中交换两个变量的数值是非常简单的,完全不需要第三个变量作为中间值。示例如下所示:



a = 1
b = 2
a, b = b, a
print(a) # 2
print(b) # 1


7. 合并多个字符串为一个字符串


采用 join() 方法可以将多个字符串合并为一个字符串。这相当于上一条技巧的反向操作。示例如下所示:


list_of_strings = ['My', 'name', 'is', 'Chaitanya', 'Baweja']
# Using join with the comma separator
print(','.join(list_of_strings))
# Output
# My,name,is,Chaitanya,Baweja


8. 字符串分割为一串子字符串列表


采用 split() 方法可以将字符串分割为一个包含其子字符串的列表,示例如下所示:



string_1 = "My name is Chaitanya Baweja"
string_2 = "sample/ string 2"
# 默认分割符 ' '
print(string_1.split())
# ['My', 'name', 'is', 'Chaitanya', 'Baweja']
# 自定义分割符 '/'
print(string_2.split('/'))
# ['sample', ' string 2']


9. 判断字符串是否回文


通过反转字符串,再和原字符串比较,可以判断是否为回文,示例如下:



my_string = "abcba"
if my_string == my_string[::-1]:
    print("palindrome")
else:
    print("not palindrome")
# Output
# palindrome

小结


以上介绍的都是比较常用的小技巧,代码函数不多,非常简洁易懂。


相关文章
|
2月前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
245 100
|
2月前
|
开发者 Python
Python中的f-string:高效字符串格式化的利器
Python中的f-string:高效字符串格式化的利器
340 99
|
2月前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
|
2月前
|
开发者 Python
Python f-strings:更优雅的字符串格式化技巧
Python f-strings:更优雅的字符串格式化技巧
|
2月前
|
开发者 Python
Python f-string:高效字符串格式化的艺术
Python f-string:高效字符串格式化的艺术
|
29天前
|
存储 Java 索引
(Python基础)新时代语言!一起学习Python吧!(二):字符编码由来;Python字符串、字符串格式化;list集合和tuple元组区别
字符编码 我们要清楚,计算机最开始的表达都是由二进制而来 我们要想通过二进制来表示我们熟知的字符看看以下的变化 例如: 1 的二进制编码为 0000 0001 我们通过A这个字符,让其在计算机内部存储(现如今,A 字符在地址通常表示为65) 现在拿A举例: 在计算机内部 A字符,它本身表示为 65这个数,在计算机底层会转为二进制码 也意味着A字符在底层表示为 1000001 通过这样的字符表示进行转换,逐步发展为拥有127个字符的编码存储到计算机中,这个编码表也被称为ASCII编码。 但随时代变迁,ASCII编码逐渐暴露短板,全球有上百种语言,光是ASCII编码并不能够满足需求
98 4
|
2月前
|
设计模式 人工智能 API
AI智能体开发实战:17种核心架构模式详解与Python代码实现
本文系统解析17种智能体架构设计模式,涵盖多智能体协作、思维树、反思优化与工具调用等核心范式,结合LangChain与LangGraph实现代码工作流,并通过真实案例验证效果,助力构建高效AI系统。
344 7
|
索引 Python 机器学习/深度学习

推荐镜像

更多