Дружественный Windows Minimum Version в InnoSetup

Использовать встроенный питон lst.count()

a = 11
bla = [1,2,3,4,5,6,7,8,9,10]

# get number of times a occurs in bla
cnt = bla.count(a)

# if cnt isn't zero then lista becomes a repeated cnt times, otherwise just not found
lista = [a] * cnt if cnt >= 1 else ["not found"]

print(lista)
>>>["not found"]

Редактировать:

Жан-Франсуа Фабр предложил более питонную версию для строительства lista:

lista = [a] * cnt or ["not found"]
[1110 ] Редактировать 2:

Если вы хотите сделать что-то похожее для словарей, вам нужно только реализовать функцию подсчета для себя. Я превратил пользователя в строковый литерал, поскольку составление списка и выполнение user[0] каждый раз бессмысленно:

user = 'john'
user_details = [{u'UserName': u'fred', u'LastSeen': u'a'}, {u'UserName': u'freddy', u'LastSeen': u'b'}]

# get the count
cnt = sum(i['UserName'] == user for i in user_details)

#do what we did before
lista = [user] * cnt or ["not found"]

Редактировать 3:

Наконец, если вы хотите использовать цикл for, проверьте, не найден ли он в конце, а не на каждом шаге:

user = ['john']

user_details = [{u'UserName': u'fred', u'LastSeen': u'a'},{u'UserName': u'freddy', u'LastSeen': u'b'}]
lis = []
for element in user_details:
    if element['UserName'] == user[0]:
        lis.append(element)
if not lis: lis.append("not found")
11
задан Kris Erickson 16 January 2009 в 00:22
поделиться

1 ответ

Эту строку называют WinVersionTooLowError и определяется как

This program requires %1 version %2 or later.

Можно переопределить его в [Messages] раздел.

11
ответ дан 3 December 2019 в 09:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: