GVKun编程网logo

python的排序函数中的key参数如何工作?(python key排序)

14

如果您对python的排序函数中的key参数如何工作?感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于python的排序函数中的key参数如何工作?的详细内容,我们还将为您解

如果您对python的排序函数中的key参数如何工作?感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于python的排序函数中的key参数如何工作?的详细内容,我们还将为您解答python key排序的相关问题,并且为您提供关于dayOfTheYear函数如何工作?、Golang函数中的指针参数如何工作?、IPython的魔术贴如何工作?、max函数如何在python中的字典上工作?的有价值信息。

本文目录一览:

python的排序函数中的key参数如何工作?(python key排序)

python的排序函数中的key参数如何工作?(python key排序)

说我有

votes = {''Charlie'': 20, ''Able'': 10, ''Baker'': 20, ''Dog'': 15}

我明白

print(sorted(votes.items(), key = lambda x: x[1]))

会导致

[(’Able’,10),(’Dog’,15),(’Baker’,20),(’Charlie’,20)]]

但这如何工作?

答案1

小编典典

传递key给您的函数将获得要排序的每个项目,并返回Python可以排序的“键”。因此,如果要按字符串的 相反顺序
对字符串列表进行排序,可以执行以下操作:

list_of_strings.sort(key=lambda s: s[::-1])

这使您可以指定每个项目的排序依据值,而不必更改项目。这样,您不必构建反向字符串列表,对其进行排序,然后将它们反向反向。

# DON''T do thisdata = [''abc'', ''def'', ''ghi'', ''jkl'']reversed_data = [s[::-1] for s in data]reversed_data.sort()data = [s[::-1] for s in reversed_data]# Do thisdata.sort(key=lambda s: s[::-1])

在您的情况下,代码按元组中的 第二个 项目对每个项目进行排序,而通常它最初将按元组中的第一个项目进行排序,然后中断与第二个项目的联系。

dayOfTheYear函数如何工作?

dayOfTheYear函数如何工作?

它需要进行一些更正,并提供您想要的结果。

/* another way extending Date */
class myDate extends Date {
  constructor(date) {
    super(date);
  }
  dayOfTheYear() {      
  let dte = this;
  let year = dte.getFullYear();
  return Math.floor((dte - new Date(year,0)) / 1000 / 60 / 60 / 24);  
}
}

function dayOfTheYear(date) {      
  let dte = new Date(date);
  let year = dte.getFullYear();
  /* 
  this part is all the work,(dte - new Date(year,0)) is actually
  current date - first day of the year 0 hour,0 minute,0second,0 millisecond
  and return a timestamp in milliseconds,the rest of the divisions are needed to turn milliseconds to days 
  */ 
  return Math.floor((dte - new Date(year,0)) / 1000 / 60 / 60 / 24);  
}
let dt = new myDate('2020-09-16');
console.log('Child class output day of the year 2020-09-16: '+dt.dayOfTheYear());
console.log('Child class output of full year inherited from parent class: '+dt.getFullYear());
console.log('Function output day of the year 2020-09-16: '+dayOfTheYear('2020-09-16'));
console.log('Function output day of the year 2020-01-11: '+dayOfTheYear('2020-01-11'));
console.log('Function output day of the year 2020-01-01: '+dayOfTheYear('2020-01-01'));
console.log('Function output day of the year 2020-12-31: '+dayOfTheYear('2020-12-31'));
console.log('Function output day of the year 2020-03-16: '+dayOfTheYear('2020-03-16'));

Golang函数中的指针参数如何工作?

Golang函数中的指针参数如何工作?

指针参数允许函数直接修改调用者传递的值。这提供了以下优势:避免不必要的复制,提高效率。简化函数接口,无需额外返回值。

Golang函数中的指针参数如何工作?

Go 函数中的指针参数的工作原理

在 Go 中,传递给函数的参数可以是值类型或指针类型。指针参数允许函数修改调用者传递的实际值。

值类型参数

立即学习“go语言免费学习笔记(深入)”;

值类型参数就像其他编程语言中的常规参数。传递给函数时,函数会创建一个该变量的副本。这意味着函数不能修改调用者传递的实际值。

func increment(value int) {
    value++
}
登录后复制

此函数接受一个值类型参数 value。当 increment 函数返回时,原始变量的值仍然保持不变。

指针类型参数

指针类型参数是一种指向另一个变量的引用。传递给函数时,函数会获得对实际值的直接访问权限。这意味着函数可以修改调用者传递的实际值。

func incrementPointer(value *int) {
    *value++
}
登录后复制

此函数接受一个指针类型参数 value。当调用函数时,value 将被解析为指向实际值的指针。函数可以通过对指针进行间接引用 (*) 来修改实际值。

实战案例

考虑一个用例,其中我们需要对切片中的元素排序。

无指针参数

func sortSlice(slice []int) {
    sort.Ints(slice)
}
登录后复制

此函数接受一个值类型切片参数 slice。对 slice 进行排序时,原始切片不会被修改。因此,调用者必须手动将排序后的切片赋值给原始切片。

使用指针参数

func sortSlicePointer(slice *[]int) {
    sort.Ints(*slice)
}
登录后复制

此函数接受一个指针类型切片参数 slice。对 *slice 进行排序时,原始切片会被直接修改。因此,调用者不必手动将排序后的切片赋值给原始切片。

指针参数的优势

  • 直接修改调用者传递的值
  • 避免不必要的复制,提高效率
  • 简化函数接口,无需额外返回值

以上就是Golang函数中的指针参数如何工作?的详细内容,更多请关注php中文网其它相关文章!

IPython的魔术贴如何工作?

IPython的魔术贴如何工作?

我想将已经缩进的Python代码/整个函数和类复制到IPython中。每当我尝试缩进时,都会收到以下错误消息:

IndentationError: unindent does not match any outer indentation level (<ipython-input-23-354f8c8be51b>,line 12)

If you want to paste code into IPython,try the %paste and %cpaste magic functions.

max函数如何在python中的字典上工作?

max函数如何在python中的字典上工作?

实际上,函数max()将返回最高索引。 就像您举个例子一样

dict = {'a':6,'b':4,'c':9}

将返回'c'字母-这是最大的密钥。 您还可以使用其他功能来操纵它,例如:

max(dict.values())

将为您带来整个词典的最大价值。

今天关于python的排序函数中的key参数如何工作?python key排序的分享就到这里,希望大家有所收获,若想了解更多关于dayOfTheYear函数如何工作?、Golang函数中的指针参数如何工作?、IPython的魔术贴如何工作?、max函数如何在python中的字典上工作?等相关知识,可以在本站进行查询。

本文标签:

上一篇Python:乘法覆盖(python乘法赋值运算符)

下一篇python-日期时间与时区到时代(python time 日期)