python脚本代码大全_18个Python脚本可加速你的编码速度

在本文中,我们向您介绍一些提示和技巧,以帮助您更快地编写代码

Python的可读性和设计简单性是其广受欢迎的两个主要原因。

d3b2a09b784a35ddec8f746a2a6c78e9.jpg-wh_651x-s_3891665041.jpg

一些常见的Python技巧可以帮助你提高编码速度。在您的日常编码练习中,以下技巧将非常有用。

1.在字符串中查找唯一元素

以下代码段可用于查找字符串中的所有唯一元素。我们使用集合中所有元素都是唯一的属性。

my_string ="aavvccccddddeee"

# 将字符串转换为集合

temp_set = set(my_string)

# 使用join将拼接设置为字符串

new_string = ''.join(temp_set)

print(new_string)

2.首字母大写

以下代码段可用于将字符串转换为标题大小写。这是使用title()字符串类的方法完成的。

my_string = “MyNameIsChaitanya Baweja”

#使用string类的title()函数

new_string = my_string.title()

print(new_string)

#output

My NameIsChaitanya Baweja

3.反转字符串

以下代码段使用Python切片操作来反转字符串。

#使用切片反转字符串

my_string = "ABCDE"

reversed_string = my_string [::-1]

print(reversed_string)

#output

4. n次打印字符串或列表

您可以对字符串或列表使用乘法(*)。这使我们可以将它们任意倍增。

n = 3 #重复次数

my_string = "ABCD"

my_list = [ 1,2,3 ]

print(my_string * n)

#abcdabcdabcd

print(my_list * n)

# [1,2,3,1,2,3,1,2,3]

一个有趣的用例是定义一个具有恒定值的列表-假设为零。

n = 4

my_list = [0] * n #n表示所需列表的长度

#[0,0,0,0]

5.将字符串列表组合成单个字符串

join()方法将作为参数传递的字符串列表组合为单个字符串。在我们的情况下,我们使用逗号分隔符将它们分开。

list_of_strings = ['My','name','is','haha','lulu']

# 使用","连接字符串

print(','.join(list_of_strings))

# Output

# My,name,is,haha,lulu

6.在两个变量之间交换值

Python使在两个变量之间交换值而不使用另一个变量变得非常简单。

a = 1

b = 2

a, b = b, a

print(a) # 2

print(b) # 1

7.将字符串拆分为子字符串列表

我们可以使用字符串类中的.split()方法将字符串拆分为子字符串列表。您还可以将要分割的分隔符作为参数传递。

string_1 ="My name is haha lulu"

string_2 = "sample/ string 2"

# defaultseparator' '

print(string_1.split())

# ['My','name','is','haha','lulu']

# defining separator as'/'

print(string_2.split('/'))

# ['sample',' string 2']

8.List Comprehension

List Comprehension为我们提供了一种基于其他列表创建列表的优雅方法。以下代码段通过将旧列表的每个元素乘以2来创建新列表。

# Multiplying each elementina listby2

original_list = [1,2,3,4]

new_list = [2*x forxinoriginal_list]

print(new_list)

# [2,4,6,8]

您可以在此处了解更多信息。

9.检查给定的字符串是否是回文

我们已经讨论了如何反转字符串。因此回文式成为Python中一个简单的程序。

my_string ="abcba"

if my_string == my_string[::-1]:

print("palindrome")

else:

print("not palindrome")

# Output

# palindrome

10.使用枚举获取索引/值对

以下脚本使用枚举遍历列表中的值及其索引。

my_list = ['a','b','c','d','e']

forindex, valueinenumerate(my_list):

print('{0}: {1}'.format(index, value))

# 0: a

# 1: b

# 2: c

# 3: d

# 4: e

11.查找两个字符串是否为字母

Counter类的一个有趣应用是查找字谜。

字谜是通过重新排列不同单词或短语的字母而形成的单词或短语。

如果Counter两个字符串的对象相等,那么它们就是字谜。

fromcollections 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')

12.使用try-except-else块

使用try / except块可以轻松完成Python中的错误处理。当try块中没有引发异常时,它将正常运行。如果您需要运行某些程序而不考虑异常,请使用finally,保证资源的释放,和最终逻辑的执行。

try:

print(a/b)

# exception raised whenbis0

exceptZeroDivisionError:

print("division by zero")

else:

print("no exceptions raised")

finally:

print("Run this always")

13.列表中元素的频率

这样做有多种方法,但我最喜欢的是使用Python Counter类。

Python计数器跟踪容器中每个元素的频率。Counter()返回一个字典,其中元素作为键,而频率作为值。

我们还使用该most_common()函数来获取most_frequent列表中的元素。

# finding frequencyofeach elementina list

fromcollections import Counter

my_list = ['a','a','b','b','b','c','d','d','d','d','d']

count= Counter(my_list) # defining a counter object

print(count) #Ofallelements

# Counter({'d': 5,'b': 3,'a': 2,'c': 1})

print(count['b']) #ofindividual element

# 3

print(count.most_common(1)) # most frequent element

# [('d', 5)]

14.检查对象的内存使用情况

以下脚本可用于检查对象的内存使用情况。在此处了解更多信息。

import sys

num = 21

print(sys.getsizeof(num))

# InPython 2, 24

# InPython 3, 28

15.从列表中取样

以下代码段 n使用该random库从给定列表中生成了许多随机样本。

随机导入

my_list = [ 'a','b','c','d','e']

num_samples = 2

样本= 随机 .sample(my_list,num_samples)

打印(样本)

#[ 'a','e' ] 这将具有任意2个 随机值

16.统计代码执行所需的时间

以下代码段使用该time库来计算执行一段代码所花费的时间。

importtime

start_time = time.time()

# Code tocheckfollows

a, b = 1,2

c = a+ b

# Code tocheckends

end_time = time.time()

time_taken_in_micro = (end_time- start_time)*(10**6)

print(" Time taken in micro_seconds: {0} ms").format(time_taken_in_micro)

17.展平列表清单

有时不确定列表的嵌套深度,只希望将所有元素放在一个平面列表中。应该这样做:

fromiteration_utilities import deepflatten

# if you onlyhave one depth nested_list, use this

def flatten(l):

return[itemforsublistinlforiteminsublist]

l = [[1,2,3],[3]]

print(flatten(l))

# [1, 2, 3, 3]

# if you don't know how deep the list isnested

l = [[1,2,3],[4,[5],[6,7]],[8,[9,[10]]]]

print(list(deepflatten(l, depth=3)))

# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

18.合并两个字典

在Python 2中,我们使用的update()方法来合并两个字典。Python 3.5使这一过程变得更加简单。在下面给出的脚本中,两个字典被合并。在有交集的情况下,使用第二个字典中的值。

dict_1 = {'apple': 9,'banana': 6}

dict_2 = {'banana': 4,'orange': 8}

combined_dict = {**dict_1, **dict_2}

print(combined_dict)

# Output

# {'apple': 9,'banana': 4,'orange': 8}

谢谢!

【编辑推荐】

【责任编辑:华轩 TEL:(010)68476606】

点赞 0

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值