当前位置: 首页 > 科技观察

13个简单好用的Python小技巧让你起飞!

时间:2023-03-15 15:13:38 科技观察

Python因其在各个领域的实用性、与Java、C和C++等其他编程语言相比的生产力以及与英语相似的命令而广受欢迎。如果你也是一个Python学习爱好者,那么今天介绍的13个技能真的太好吃了!列表和列表相关的6个操作介绍如下;1.将两个列表合并成一个字典假设我们在Python中有两个列表,我们想将它们合并成一个字典的形式,其中一个列表的项作为字典的键,另一个作为值。这是一个很常见的问题,在用Python写代码的时候经常会遇到。但是为了解决这个问题,我们需要考虑几个约束条件,比如两个列表的大小,两个列表中item的类型,里面是否有重复的item,尤其是我们要作为key的item.我们可以通过使用像zip这样的内置函数来克服这个问题。keys_list=['A','B','C']values_list=['blue','red','bold']#这两个列表转换成字典有3种方法#1。使用Pythonzip,dict函数dict_method_1=dict(zip(keys_list,values_list))#2。使用压缩函数dict_method_2={key:valueforkey,valueinzip(keys_list,values_list)}#3。使用zip函数items_tuples=zip(keys_list,values_list)dict_method_3={}forkey,valueinitems_tuples:ifkeyindict_method_3:passelse:dict_method_3[key]=valueprint(dict_method_1)print(dict_method_2)print(dict_method_3)结果如下:2.合并两个或多个列表合并为一个列表当我们有两个或多个列表时,我们希望将它们全部收集到一个大列表中,其中较小列表的所有第一项构成较大列表中的第一个列表。例如,如果我有4个列表[1,2,3]、['a','b','c']、['h','e','y']和[4,5,6]、我们要为这四个列表新建一个列表;它将是[[1,'a','h',4],[2,'b','e',5],[3,'c','y',6]]。defmerge(*args,missing_val=None):max_length=max([len(lst)forlstinargs])outList=[]foriinrange(max_length):outList.append([args[k][i]ifi=0:print(address)#地址地址的方法二:ifstreetinaddress:print(address)结果如下:11.获取字符串的大小(以字节为单位)有时,尤其是在构建内存关键型应用程序时,我们需要知道我们的字符串使用了多少内存。幸运的是,这可以用一行代码快速完成。str1="hello"str2="😀"defstr_size(s):returnlen(s.encode('utf-8'))print(str_size(str1))print(str_size(str2))结果如下:input/Outputoperations与输入/输出操作相关的操作有2个,分别介绍如下;12.检查文件是否存在在数据科学和许多其他应用中,我们经常需要从文件中读取数据或向文件中写入数据。但为此我们需要检查文件是否存在。因此,我们的代码不会因错误而终止。#方法1importosexists=os.path.isfile('/path/to/file')#方法2frompathlibimportPathconfig=Path('/path/to/file')ifconfig.is_file():pass13.解析另一种电子表格一种非常常见的文件交互是从电子表格中解析数据。幸运的是,我们有CSV模块来帮助我们高效地执行此任务。importcsvcsv_mapping_list=[]withopen("/path/to/data.csv")asmy_data:csv_reader=csv.reader(my_data,delimiter=",")line_count=0forlineincsv_reader:ifline_count==0:header=lineelse:row_dict={key:valueforkey,valueinzip(header,line)}csv_mapping_list.append(row_dict)line_count+=1