Вот фактический эквивалент * nix, т. е. он дает выход * nix-стиля.
Get-Command <your command> | Select-Object -ExpandProperty Definition
Просто замените все, что вы ищете.
PS C:\> Get-Command notepad.exe | Select-Object -ExpandProperty Definition
C:\Windows\system32\notepad.exe
Когда вы добавите его в свой профиль, вы захотите использовать функцию, а не псевдоним, потому что вы не можете использовать псевдонимы с трубами:
function which($name)
{
Get-Command $name | Select-Object -ExpandProperty Definition
}
Теперь, когда вы перезагружаете свой профиль, вы можете сделать это :
PS C:\> which notepad
C:\Windows\system32\notepad.exe
Используйте встроенный min()
в :
item_no = [3,5,7,3,5,7,3,5,7,9]
min_val = min(item_no) # what is the minimal value?
# print item with position
for i,v in enumerate(item_no):
if v==min_val:
print(f"{min_val} at position {i}")
# get all min values
all_mins = [i for i in item_no if i==min_val]
print( all_mins )
Выход:
3 at position 0
3 at position 3
3 at position 6
[3, 3, 3]
Еще один вариант. Отфильтруйте, что нужно из списка:
item_no = [3,5,7,3,5,7,3,5,7,9]
min_value = min(item_no)
print(list(filter(lambda x: x == min_value, item_no)))
# [3, 3, 3]
Добро пожаловать!
Это немного похоже на домашнее задание, поэтому я собираюсь дать подсказки вместо прямого ответа. У вас уже есть цикл, который находит самое низкое значение, используя тест меньше чем . Вы можете расширить это, чтобы рассмотреть, что происходит, когда вы найдете значение, которое равно предыдущему наименьшему значению.
Кроме того, что произойдет, если ваши входы велики, например, [1500, 2000, 1800]?