您的位置: 首页 - 站长

flv网站建设绍兴专业网站建设公司

当前位置: 首页 > news >正文

flv网站建设,绍兴专业网站建设公司,网站上怎么做动画广告,深圳开发网站建设哪家好前言 之前发过22个小技巧#xff0c;今天就来分享分享13个非常有用的代码片段 赶紧码住#xff0c;看看你都了解吗 1.将两个列表合并成一个字典 假设我们在 Python 中有两个列表#xff0c;我们希望将它们合并为字典形式#xff0c;其中一个列表的项作为字典的键#…前言 之前发过22个小技巧今天就来分享分享13个非常有用的代码片段 赶紧码住看看你都了解吗 1.将两个列表合并成一个字典 假设我们在 Python 中有两个列表我们希望将它们合并为字典形式其中一个列表的项作为字典的键另一个作为值。这是在用 Python 编写代码时经常遇到的一个非常常见的问题 但是为了解决这个问题我们需要考虑几个限制比如两个列表的大小两个列表中元素的类型以及其中是否有重复的元素尤其是我们将使用的元素作为 key 时。我们可以通过使用 zip 等内置函数来解决这些问题 keys_list [A, B, C] values_list [blue, red, bold]#There are 3 ways to convert these two lists into a dictionary #1- Using Pythons zip, dict functionz dict_method_1 dict(zip(keys_list, values_list))#2- Using the zip function with dictionary comprehensions dict_method_2 {key:value for key, value in zip(keys_list, values_list)}#3- Using the zip function with a loop items_tuples zip(keys_list, values_list) dict_method_3 {} for key, value in items_tuples: if key in dict_method_3: pass # To avoid repeating keys.else: dict_method_3[key] value2.将两个或多个列表合并为一个包含列表的列表 另一个常见的任务是当我们有两个或更多列表时我们希望将它们全部收集到一个大列表中其中较小列表的所有第一项构成较大列表中的第一个列表 例如如果我们有 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]] def merge(*args, missing_val None): #missing_val will be used when one of the smaller lists is shorter tham the others. #Get the maximum length within the smaller lists.max_length max([len(lst) for lst in args])outList []for i in range(max_length):result.append([args[k][i] if i len(args[k]) else missing_val for k in range(len(args))])return outList3.对字典列表进行排序 这一组日常列表任务是排序任务根据列表中包含的元素的数据类型我们将采用稍微不同的方式对它们进行排序。 dicts_lists [{Name: James,Age: 20,},{Name: May,Age: 14,},{Name: Katy,Age: 23,} ] Python学习资源分享群309488165 #There are different ways to sort that list #1- Using the sort/ sorted function based on the age dicts_lists.sort(keylambda item: item.get(Age))#2- Using itemgetter module based on name from operator import itemgetter f itemgetter(Name) dicts_lists.sort(keyf)4.对字符串列表进行排序 我们经常面临包含字符串的列表我们需要按字母顺序、长度或我们想要或我们的应用程序需要的任何其他因素对这些列表进行排序 my_list [blue, red, green]#1- Using sort or srted directly or with specifc keys my_list.sort() #sorts alphabetically or in an ascending order for numeric data my_list sorted(my_list, keylen) #sorts the list based on the length of the strings from shortest to longest.

You can use reverseTrue to flip the order#2- Using locale and functools

import locale from functools import cmp_to_key my_list sorted(my_list, keycmp_tokey(locale.strcoll)) 5.根据另一个列表对列表进行排序 有时我们可能需要使用一个列表来对另一个列表进行排序,因此我们将有一个数字列表索引和一个我们想使用这些索引进行排序的列表 a [blue, green, orange, purple, yellow] b [3, 2, 5, 4, 1] #Use list comprehensions to sort these lists sortedList [val for (, val) in sorted(zip(b, a), keylambda x: \x[0])]6.将列表映射到字典 列表代码片段的最后一个任务如果给定一个列表并将其映射到字典中也就是说我们想将我们的列表转换为带有数字键的字典 mylist [blue, orange, green] #Map the list into a dict using the map, zip and dict functions mapped_dict dict(zip(itr, map(fn, itr)))Dictionary Snippets 现在处理的数据类型是字典 7.合并两个或多个字典 假设我们有两个或多个字典并且我们希望将它们全部合并为一个具有唯一键的字典 from collections import defaultdict #merge two or more dicts using the collections module def merge_dicts(*dicts):mdict defaultdict(list)for dict in dicts:for key in dict:res[key].append(d[key])return dict(mdict) 8.反转字典 一个非常常见的字典任务是如果我们有一个字典并且想要翻转它的键和值键将成为值而值将成为键 当我们这样做时我们需要确保没有重复的键。值可以重复但键不能并确保所有新键都是可以 hashable 的 my_dict {brand: Ford,model: Mustang,year: 1964 } #Invert the dictionary based on its content #1- If we know all values are unique. my_inverted_dict dict(map(reversed, my_dict.items()))#2- If non-unique values exist from collections import defaultdict my_inverted_dict defaultdict(list) {my_inverted_dict[v].append(k) for k, v in my_dict.items()}#3- If any of the values are not hashable my_dict {value: key for key in my_inverted_dict for value in my_inverted_dict[key]}String Snippets 接下来是字符串的处理 9.使用 f 字符串 格式化字符串可能是我们几乎每天都需要完成的一项任务在 Python 中有多种方法可以格式化字符串使用 f 字符串是比较好的选择 #Formatting strings with f string. str_val books num_val 15 print(f{num_val} {str_val}) # 15 books print(f{num_val % 2 }) # 1 print(f{str_val!r}) # books#Dealing with floats price_val 5.18362 print(f{price_val:.2f}) # 5.18 python学习资源分享群309488165 #Formatting dates from datetime import datetime; date_val datetime.utcnow() print(f{date_val:%Y-%m-%d}) # date_val2021-09-2410.检查子串 一项非常常见的任务就是检查字符串是否在与字符串列表中 addresses [123 Elm Street, 531 Oak Street, 678 Maple Street] street Elm Street#The top 2 methods to check if street in any of the items in the addresses list #1- Using the find method for address in addresses:if address.find(street) 0:print(address)#2- Using the in keyword for address in addresses:if street in address:print(address) 11.以字节为单位获取字符串的大小 有时尤其是在构建内存关键应用程序时我们需要知道我们的字符串使用了多少内存 str1 hello str2 def str_size(s):return len(s.encode(utf-8))str_size(str1) str_size(str2)Input/ Output operations 最后我们来看看输入输出方面的代码片段 12.检查文件是否存在 在数据科学和许多其他应用程序中我们经常需要从文件中读取数据或向其中写入数据但要做到这一点我们需要检查文件是否存在因此我们需要确保代码 不会因 IO 错误而终止 #Checking if a file exists in two ways #1- Using the OS module import os exists os.path.isfile(/path/to/file)#2- Use the pathlib module for a better performance from pathlib import Path config Path(/path/to/file) if config.is_file(): pass13.解析电子表格 另一种非常常见的文件交互是从电子表格中解析数据我们使用 CSV 模块来帮助我们有效地执行该任务 import csv csv_mapping_list [] with open(/path/to/data.csv) as my_data:csv_reader csv.reader(my_data, delimiter,)line_count 0for line in csv_reader:if line_count 0:header lineelse:row_dict {key: value for key, value in zip(header, line)}csv_mapping_list.append(row_dict)line_count 1最后 十三个代码片段分享到这里就结束咯 在这给大家分享一个学习python的合集视频
还有准备了一些电子书籍 点击文末名片就可以进行领取啦 最适合新手小白学习python的视频教程合集【Python零基础入门教程】