百木园-与人分享,
就是让自己快乐。

python小技巧

01将字符串倒转

my_string = \"ABCDE\"
reversed_string = my_string[::-1]

02将英文单词的首字母大写通过title()方法来实现首字母的大写

my_string = \"my name is xiao ming\"# 通过title()来实现首字母大写
new_string=my_string.title()print(new_string)# My Name Is Xiao Ming

03给字符串去重

my_string = \"aabbbbbccccddddeeeff\"# 通过set()来进行去重
temp_set = set(my_string)# 通过join()来进行连接
new_string = \'\'.join(temp_set)
print(new_string) # dfbcae

04拆分字符串

string_1 = \"My name is xiao ming\"
string_2 = \"sample, string 1, string 2\"# 默认的分隔符是空格,来进行拆分
print(string_1.split())# [\'My\', \'name\', \'is\', \'xiao\', \'ming\']
print(string_2.split(\',\'))# [\'sample\', \' string 1\', \' string 2\']

05将字典中的字符串连词成串

list_of_strings = [\'My\', \'name\', \'is\', \'Xiao\', \'Ming\']# 通过空格和join来连词成句
print(\' \'.join(list_of_strings))# My name is Xiao Ming

06查看列表中各元素出现的个数

from collections import Counter
my_list = [\'a\',\'a\',\'b\',\'b\',\'b\',\'c\',\'d\',\'d\',\'d\',\'d\',\'d\']
count = Counter(my_list)
print(count) # Counter({\'d\': 5, \'b\': 3, \'a\': 2, \'c\': 1})
print(count[\'b\']) # 单独的“b”元素出现的次数# 3
print(count.most_common(1)) # 出现频率最多的元素# [(\'d\', 5)]

07合并两字典

dict_1 = {\'apple\': 9, \'banana\': 6}
dict_2 = {\'grape\': 4, \'orange\': 8}
# 方法一
combined_dict = {**dict_1, **dict_2}# 方法二
dict_1.update(dict_2)# 方法三
print(dict(dict_1.items() | dict_2.items())) #  {\'apple\': 9, \'banana\': 6, \'grape\': 4, \'orange\': 8}

08查看程序运行的时间

import time
start_time = time.time()
end_time = time.time()
time_taken_in_micro = (end_time - start_time) * (10 ** 6)
print(time_taken_in_micro)

09列表的扁平化有时候会存在列表当中还嵌套着列表的情况

from iteration_utilities import deepflatten
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]

10查看列表当中是否存在重复值

def unique(l):
  if len(l)==len(set(l)):
    print(\"不存在重复值\")else: print(\"存在重复值\")
unique([1,2,3,4])# 不存在重复值
unique([1,1,2,3])# 存在重复值

11数组的转置

array = [[\'a\', \'b\'], [\'c\', \'d\'], [\'e\', \'f\']]
transposed = zip(*array)
print(list(transposed)) # [(\'a\', \'c\', \'e\'), (\'b\', \'d\', \'f\')]

12找出两列表当中的不同元素

def difference(a, b):
  set_a = set(a)
  set_b = set(b)
  comparison = set_a.difference(set_b)
  return list(comparison)# 返回第一个列表的不同的元素
difference([1,2,6], [1,2,5])# [6]

13将两列表变成键值对将两个列表合并成一个键值对的字典

def to_dictionary(keys, values):
  return dict(zip(keys, values))   
keys = [\"a\", \"b\", \"c\"]
values = [2, 3, 4]
print(to_dictionary(keys, values))  # {\'a\': 2, \'b\': 3, \'c\': 4}

14对字典进行排序根据字典当中的值对字典进行排序

d = {\'apple\': 9, \'grape\': 4, \'banana\': 6, \'orange\': 8}
# 方法一
sorted(d.items(), key = lambda x: x[1]) # 从小到大排序# [(\'grape\', 4), (\'banana\', 6), (\'orange\', 8), (\'apple\', 9)]
sorted(d.items(), key = lambda x: x[1], reverse = True) # 从大到小排序# [(\'apple\', 9), (\'orange\', 8), (\'banana\', 6), (\'grape\', 4)]
# 方法二
from operator import itemgetter
print(sorted(d.items(), key = itemgetter(1))) # [(\'grape\', 4), (\'banana\', 6), (\'orange\', 8), (\'apple\', 9)]

15列表中最大/最小值的索引

list1 = [20, 30, 50, 70, 90]
def max_index(list_test):
    return max(range(len(list_test)), key = list_test.__getitem__)
def min_index(list_test):
    return min(range(len(list_test)), key = list_test.__getitem__)
max_index(list1)# 4
min_index(list1)# 0

16.+=与= +的不同

#案例1
a = [1,2]
b = a
a = a + [3, 4] #会生成一个新列表
print(a) #[1,2,3,4]
print(b) #[1,2]
#案例
a = [1,2]
b = a
a += [3, 4]  #相当于extend,列表a后直接添加元素
print(a) #[1,2,3,4]
print(b) #[1,2,3,4]

17.列表给多个变量赋值

list = [1, 2, 3]
a, b, c = list   #a=1,b=2,c=3

18.获取变量内存占用

import sys
value = \"helo moto\"
sys.getsizeof(value)

19.字典集合推导式

values = {i : i*i for i in range(3)} #{0:0, 1:1, 2:4}

20.emoji表情

import emoji
emoji.emojize(\'Python is :thumbs_up:\')#返回的一个大拇指表

21.map+lambda  惊喜组合

x = [1, 2, 3]
y = map(lambda x : x ** 2, x)
print(list(y)) # [1, 4, 9]

22.sh调用系统命令,写shell脚本

import sh
sh.echo(\"情系中国结,联通四海心\")#返回“情系中国结,联通四海心”
sh.which(\"python\")  #返回python所在路径

 

 

 

 

人是群居动物,所以当你看到周围的人都在做一件事的时候,你如果不做,是会很恐慌的。有时,即便明知道是错的,也不得不尝试一下。

 

 


来源:https://www.cnblogs.com/lzcnblogs/p/16559845.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » python小技巧

相关推荐

  • 暂无文章