Language Integrated Query (LINQ - Language Integrated Query) - проект Microsoft по додаванню синтаксису мови запитів, що нагадує SQL, в мови програмування платформи .NET Framework. LINQ випущена разом з Visual Studio 2008 у кінці листопада 2007 року.
LINQ є набором функцій, що розширюють можливості запиту в синтаксисі мови C# і Visual Basic. LINQ надає стандартні шаблони для створення запитів і оновлення даних; технологія може бути розширена для підтримки потенційно будь-якого типу джерел даних (масиви, колекції, бази даних, документи XML, сутності (Entity)).
Архітектура LINQ показана на рис. 18.1.
Принцип LINQ полягає в тому, що усі елементи мови повинні виконувати одну і ту саму роботу незалежно від джерела даних. Проте, не дивлячись на те, що синтаксис працює з усіма типами джерел даних, постачальник запиту, що зв'язує дані з самим джерелом даних, може реалізувати цю поведінку по різному.
from random import randint
mass = [randint(-20, 10) for i in range(5)]
a = []
b = []
for i in range(5):
if mass[i] >= 0:
a.append(mass[i])
else:
b.append(mass[i])
print(f'Массив: {" ".join(str(s) for s in mass)}')
if len(a) != 0 and len(b) != 0:
print(f'Ср. ариф. элементов [{min(b)},{max(b)}]: {sum(b) / len(b)}')
print(f'Ср. ариф. элементов [{min(a)},{max(a)}]: {sum(a) / len(a)}')
if len(a) == 0:
print(f'Ср. ариф. элементов [{min(b)},{max(b)}]: {sum(b) / len(b)}')
print(f'Ср. ариф. элементов 0: 0')
if len(b) == 0:
print(f'Ср. ариф. элементов 0: 0')
print(f'Ср. ариф. элементов [{min(a)},{max(a)}]: {sum(a) / len(a)}')
Объяснение:
Language Integrated Query (LINQ - Language Integrated Query) - проект Microsoft по додаванню синтаксису мови запитів, що нагадує SQL, в мови програмування платформи .NET Framework. LINQ випущена разом з Visual Studio 2008 у кінці листопада 2007 року.
LINQ є набором функцій, що розширюють можливості запиту в синтаксисі мови C# і Visual Basic. LINQ надає стандартні шаблони для створення запитів і оновлення даних; технологія може бути розширена для підтримки потенційно будь-якого типу джерел даних (масиви, колекції, бази даних, документи XML, сутності (Entity)).
Архітектура LINQ показана на рис. 18.1.
Принцип LINQ полягає в тому, що усі елементи мови повинні виконувати одну і ту саму роботу незалежно від джерела даних. Проте, не дивлячись на те, що синтаксис працює з усіма типами джерел даних, постачальник запиту, що зв'язує дані з самим джерелом даних, може реалізувати цю поведінку по різному.