Вам нужно создать такую структуру:
public class Friends
{
public List<FacebookFriend> data {get;set;}
}
public class FacebookFriend
{
public string id {get;set;}
public string name {get;set;}
}
Тогда вы должны иметь возможность сделать:
Friends facebookFriends = new JavaScriptSerializer().Deserialize<Friends>(result);
Имена моих классов - всего лишь пример. Вы должны использовать правильные имена.
Добавление образца теста:
string json=
@"{""data"":[{""id"":""518523721"",""name"":""ftyft""}, {""id"":""527032438"",""name"":""ftyftyf""}, {""id"":""527572047"",""name"":""ftgft""}, {""id"":""531141884"",""name"":""ftftft""}]}";
Friends facebookFriends = new System.Web.Script.Serialization.JavaScriptSerializer().Deserialize<Friends>(json);
foreach(var item in facebookFriends.data)
{
Console.WriteLine("id: {0}, name: {1}",item.id,item.name);
}
Производит:
id: 518523721, name: ftyft
id: 527032438, name: ftyftyf
id: 527572047, name: ftgft
id: 531141884, name: ftftft
Adam только частично прав. Многие, если вообще, математики никогда не будут касаться его. Если существует компьютерный инструмент, используемый вообще, это будет чем-то как Mathematica или Клен . Технические отделы, с другой стороны, часто полагаются на него и существуют определенно полезные вещи для некоторых прикладных математиков. Это также используется в большой степени в промышленности в некоторых областях.
Что-то, что необходимо понять о MATLAB, - то, что он начался как обертка на библиотеки Fortran для линейной алгебры. В течение долгого времени это имело отношение, из которого "весь мир является массивом, удваивается (плавает)". Как язык, это выросло очень органически, и существуют некоторые дефекты, которые очень испеклись в, если Вы смотрите на него так же, как на язык программирования.
Однако при рассмотрении его как среды для того, чтобы выполнить в определенных типах исследования это имеет некоторые реальные преимущества. Это почти столь хорошо, как это добирается для того, чтобы сделать линейную алгебру с плавающей точкой. Нотация проста и мощна, реализация быстро и доверяла. Это очень хорошо в генерации графиков и других интерактивных задач. Существует большое количество 'панелей инструментов' с хорошим кодом для конкретных задач, которые доступны. Существует многочисленное сообщество пользователей, которые совместно используют числовые коды (Python + , NumPy ничего не имеет в той же лиге, по крайней мере, еще)
, Python, бородавки и все, является намного лучшим языком программирования (как многие другие). Однако это - приблизительно одно десятилетие позади с точки зрения инструментов.
ключевой пункт - то, что большинство людей, которые используют MATLAB, не является программистами действительно и не хочет быть.
Это - паршивый выбор для общего языка программирования; это является изворотливым, медленным для многих задач (необходимо векторизовать вещи получить эффективные коды), и не легкий интегрироваться с внешним миром. С другой стороны, для вещей это способно, это очень очень хорошо. Очень немного вещей выдерживают сравнение. Существует компания с разумной поддержкой и кто знает, сколько годы человека помещали в него. Это может иметь значение в промышленности.
Строго рассмотрение Вашего Python по сравнению со сравнением MATLAB, они - главным образом различные инструменты для различных заданий. В областях, где они действительно накладываются немного, трудно сказать, что лучший маршрут пойти (во многом зависит от того, что Вы пытаетесь сделать). Но главным образом Python не весь настолько хорош в базовых преимуществах MATLAB, и наоборот.
Первое Преимущество Двигателя . Matlab был вокруг с конца 1970-х. Python пришел позже, и библиотеки, которые делают его подходящим для задач типа Matlab, приехали еще позже. Люди привыкли к Matlab, таким образом, они используют его.
Я думаю, что Вы ответили на свой собственный вопрос, когда Вы отметили, что Matlab является "классным для работы с матрицами и выводящимися на печать вещами". Любое приложение, которое требует большого количества матричной математики и визуализации, вероятно, будет самым легким сделать в Matlab.
Однако синтаксис Matlab чувствует себя неловким и показывает возраст языка. Напротив, Python является намного более хорошим языком программирования общего назначения и, с правильными библиотеками может сделать большую часть того, что делает Matlab. Однако Matlab всегда будет иметь более краткий синтаксис, чем Python для векторного и матричного управления.
, Если большая часть Вашего программирования включит эти виды манипуляций, такой как в обработке сигналов и некоторых статистических методах, то Matlab будет лучшим выбором.
Прошло некоторое время, так как я использовал Matlab, но из памяти это действительно предоставляет (хотя дополнительные плагины) способности генерировать источник, чтобы позволить Вам понимать свой алгоритм на DSP.
, Так как Python является языком программирования общего назначения нет никакой причины, почему Вы не могли сделать всего в Python, который можно сделать в matlab. Однако matlab действительно обеспечивает много других инструментов - например, очень широкий спектр dsp функций, широкий спектр функций домена S и Z.
Все они могли быть рукой, кодированной в Python (так как это - язык общего назначения), но если все, что Вы после результатов, возможно, тратит деньги на Matlab, более дешевая опция?
Эти функции были также настроены для производительности. например, документация для Numpy определяет, что их преобразование Фурье оптимизировано для питания 2 наборов данных точки. Поскольку я понимаю, что Matlab был записан для использования самого эффективного преобразования Фурье для удовлетворения размеру набора данных, не просто питанию 2.
редактирование: О, и в Matlab можно произвести некоторых сенсационных взгляд графики очень легко, который важен, когда Вы представляете свои данные. Снова, конечно, не невозможное использование других инструментов.
Одной причиной MATLAB популярен у университетов, является та же причина, много вещей популярно у университетов: существует много преподавателей, знакомых с ним, и это довольно устойчиво.
я говорил с большим количеством людей, которые особенно интересуются возникающей способностью MATLAB насладиться GPU вместо того, чтобы работать последовательно. Используя Python в школе градиента, я вид желания у меня было облизывание для работы с MATLAB в этом случае. Это уверенный сделало бы вычисления векторного пространства бризом.
MATLAB БЫЛ оберткой вокруг обычно доступных библиотек. И во многих случаях это все еще. Когда Вы добираетесь до больших наборов данных, это имеет много дополнительной оптимизации, включая исследование и специальные типичные проблемы преобразования регистра (уменьшающий до разреженных матриц, где полезный, например), и обрабатывающий пограничные случаи. Часто, можно отправить проблему в стандартной форме к общей функции, и это определит лучший базовый алгоритм для использования на основе данных. Для маленького N все алгоритмы быстры, но MATLAB делает определение оптимального алгоритма надуманным вопросом.
Это записано кем-то, кто ненавидит MATLAB и попытался заменить его из-за проблем интеграции. От Вашего вопроса Вы упоминаете, что получили MATLAB 5 и использовали его для курса. На том уровне Вы могли бы хотеть посмотреть Октава , реализация с открытым исходным кодом с тем же синтаксисом. Я предполагаю, что это - до MATLAB 5 уровней к настоящему времени (я только играю вокруг с ним). Это должно позволить Вам "сдавать свой экзамен". Для пустой функциональности MATLAB это, кажется, близко. Этому недостает поддержки панели инструментов (который, снова, главным образом служит, чтобы повторно сформулировать вызовы функции к формам, знакомым инженерам в поле, и выбирает правильный базовый алгоритм для использования).
Главной причиной это полезно в промышленности, являются плагины, созданные сверх базовой функциональности. Почти вся активная разработка Matlab в течение последних нескольких лет сфокусировалась на них.
, К сожалению, у Вас не будет большой возможности использовать их в учебной среде.
Кажется, чистая инерция. Где это используется, все слишком заняты для изучения IDL или numpy в достаточных деталях для переключения, и не хотят переписывать хорошие рабочие программы. К счастью это не строго верно, но достаточно верно в достаточном количестве мест, что Matlab будет около долгого времени. Как Фортран (в активном использовании, где я работаю!)
MATLAB является фантастическим инструментом для
, можно действительно играть с, визуализировать и протестировать идеи о наборе данных очень эффективно. Это не должно рассматриваться как альтернатива другим языкам программного обеспечения, используемым для разработки продукта. Я настоятельно рекомендую его для вышеупомянутых задач, хотя это дорого - свободные альтернативы как , Октава и Python нагоняет.
Между matplotlib+pylab и NumPy, я не думаю, существует много фактического различия между Matlab и Python кроме культурной инерции, как предложено @Adam Беллэйром.
Наиболее вероятная причина, что это использовало так много в университетах, состоит в том, что факультет математики привык к нему, понимает его и знает, как включить его в их программу.
Лично, я склонен думать о Matlab как об интерактивном матричном калькуляторе и выводящемся на печать инструменте с несколькими поддержкой сценариев, а не как законченный язык программирования как Python или C. Причина ее успеха состоит в том, что матричный материал и выводящий работу на печать из поля, и можно сделать несколько очень определенных вещей в нем с фактически никаким фактическим знанием программирования. Язык, как Вы указываете, чрезвычайно печальный для использования для большего количества задач общего назначения, такой как даже самая простая строковая обработка. Его синтаксис является изворотливым, и это не было создано с абстракциями, необходимыми для проектов приблизительно больше чем 100 строк в памяти.
я думаю причина, почему люди пытаются использовать Matlab, как серьезный язык программирования - то, что большинство инженеров (существуют исключения; мой градус находится в биоинженерии, и мне нравится программировать), ужасные программисты и очень не хотят программировать. Им преподают Matlab в колледже главным образом для матричной математики, и они изучают некоторое элементарное программирование как часть изучения Matlab, и просто предполагают, что Matlab достаточно хорош. Я не могу думать ни о ком, кого я знаю, кто знает любой язык помимо Matlab, но все еще использует Matlab для чего-либо кроме нескольких чистых приложений перемалывания чисел.
MATLAB, как упомянуто другими, силен в матричном управлении и был первоначально создан как расширение известного BLAS и библиотеки LAPACK, пользовавшиеся для линейной алгебры. Это взаимодействует через интерфейс хорошо с другими языками как Java и хорошо одобрено техническими и научными компаниями для его хорошо разработанных и зарегистрированных библиотек. Из того, что я знаю о Python и NumPy, в то время как они совместно используют многие фундаментальные возможности MATLAB, у них нет полной ширины и глубины возможностей с их библиотеками.
Лично, я использую MATLAB, потому что это - то, что я изучил в своей стажировке, это - то, что я использовал в школе градиента, и это - то, что я использовал в своем первом задании. У меня ничего нет против Python (или никакой другой язык). Это, что я используюсь также.
кроме того, существует другая бесплатная версия в дополнение к scilab, упомянутому Jim C от гну, названной Октава .
MATLAB является популярной и широко адаптированной частью сложного пакета программного обеспечения. Это была бы ошибка думать, что это - просто математическое программное обеспечение, так как это имеет широкий спектр "панелей инструментов". Я недавно использовал Matplotlib для графического изображения некоторых данных из базы данных, и это сделало задание, не нуждаясь во всех дополнительных свойствах MATLAB. Однако не может следовать сравнить Python и MATLAB в каждой ситуации. Как со всем остальным решение зависит от того, что необходимо сделать.
я использовал MATLAB в старшекурснике для дизайна систем управления и моделирования и также для обработки изображений в школе градиента. Поскольку эти поля MATLAB имеют большую часть смысла из-за мощных панелей инструментов управления и обработки изображений. Как все упомянули, операции над массивом, которые используются в каждом сценарии MATLAB, который необходимо было бы записать, очень легки с MATLAB.
Другая хорошая вещь о MATLAB состоит в том, что это очень легко и быстро, чтобы сделать идеи разработки прототипа и испытания с помощью созданного в функциях панели инструментов. Например, это не прилагает усилий для импорта изображения, и вычислить это - гистограмма, или сделайте некоторую простую обработку на нем. Один недостаток MATLAB мог быть, это - скорость из-за своего интерпретируемого характера. Однако, если Вам действительно нужна скорость, чем он может принять решение реализовать протестированную логику в C/C++, и т.д.
Для дальнейшего сравнения с Python, я могу сказать, что MATLAB предоставляет полный пакет Вам, чтобы сделать Вашу работу без потребности оглядывания для внешних библиотек и реализации дополнительных функций.
Один последний момент о MATLAB, который я вижу, не упомянут в ответах, вот то, что это имеет очень мощное визуальное моделирование/среду симуляции, названное Simulink. Легче разработать и моделировать большие системы с Simulink.
Наконец, снова, все это зависит от проблемы, которую необходимо решить. Если Ваша проблемная область может использовать одну из панелей инструментов MATLAB, и у Вас есть доступ к MATLAB тогда, можно быть уверены, что у Вас будет правильный инструмент для решения его.
MATLAB является большим для того, чтобы сделать управление массивом, делая специализированные математические функции, и для создания хороших быстрых графиков.
я, вероятно, только использовал бы его для больших программ, если я мог бы использовать большое управление массивом/матрицей.
Вы не должны волноваться о IDE так же как в более формальных пакетах, таким образом, это легче для студентов без большого программирования опыта взять.
Держите все. Когда прошлый раз, Вы программировали свой калькулятор для игры Тетриса? Вы на самом деле думали, что могли записать что-нибудь, что Вы хотите в тех 128k RAM? Вероятно, нет. MATLAB не для программирования, если Вы не имеете дело с огромными матрицами. Это - калькулятор построения графика, который Вы выкрикиваете, когда у Вас есть Мегабайты к Гигабайтам данных, чтобы уплотнить и/или вывестись на печать. Изучите просто основной материал, но также и не уничтожайте себя пытающийся заставить Python быть калькулятором построения графика.
Вы быстро получите ощущение того, когда Вы захотите уплотнить, вывести на печать или исследовать в MATLAB и когда Вы хотите иметь весь тот Python предложения. Много инженеров обращается к пред и обработка сообщения в Python или Perl. Иногда даже просто обратившись к MATLAB для твердых битов.
Они - такие совершенно другие инструменты, которые необходимо изучить их основные преимущества сначала, не пытаясь заменить один другим. Предоставленный для того, чтобы сэкономить деньги я или использовал бы Октаву или сэкономил бы на простоте и учился бы работать с разреженными матрицами в Perl или Python.
Я использовал matlab много лет в моем исследовании. Это является большим для линейной алгебры и имеет большой набор правильно написанных панелей инструментов. Новые версии начинают продвигать его в то, чтобы быть ближе к языку общего назначения (лучшие оптимизаторы, намного лучшая объектная модель, более богатые правила обзора, и т.д.).
Это прошлым летом, у меня было задание, где я использовал Python + numpy вместо Matlab. Я наслаждался изменением темпа. Это - "реальный" язык (и все, что влечет за собой), и это имеет некоторые большие числовые функции как широковещательная передача массивов. Мне также действительно нравится ipython среда.
Вот некоторые вещи, которые я предпочитаю о Matlab:
, Если бы у меня не было такой большой существующей кодовой базы, я серьезно рассмотрел бы переключение на Python + numpy.
Я полагаю, что у Вас есть очень положительная сторона, и это - то, которое было повышено в компании, где я работаю. Компания ограничена в, он - способность применить matlab из-за включенных затрат на лицензирование. Один разработчик доказал, что Python был очень подходящей заменой, но он упал на неосведомленные уши потому что владельцам тех ушей...
, Если это стоит ВЈ10,000 (??) это, должно стоить того!!
я с Вами здесь. Python является очень хорошей заменой для MatLab.
я должен указать, что мне сказали использование компании, возможно, 5% к 10% возможностей MatLabs, и это - основание для моего соглашения с исходным плакатом
Я знаю, что этот вопрос старый, и поэтому, возможно, больше не смотрел, но чувствовал необходимость прокомментировать. Как аэрокосмический инженер Технологического института Джорджии, я могу сказать, сомневается, что MATLAB потрясающий. Вы можете получить это быстро интерфейс с таблицами Excel, чтобы получать данные о как высоко и быстро летают ракеты, как влияет ветер те же самые ракеты и какое значение имеют разные двигатели. За пределами ракетная техника, аналогичные концепции используются для автомобилей, грузовиков, самолет, космический корабль и даже легкая атлетика. Вы можете втянуть большие объемы данных, манипулируйте ими и убедитесь, что ваши результаты такие, какими они должны быть. В случае, если что-то выкл, вы можете добавить разрыв строки, где возникает ошибка, для отладки ваша программа без необходимости перекомпилировать каждый раз, когда вы хотите для запуска вашей программы. Он медленнее некоторых других программ? Ну, технически. Я уверен, если ты хочешь набрать номер он отлично подходит для графического процессора NVIDIA, вероятно будет быстрее, но это требует гораздо больше усилий с более сложной отладкой.
Как общий язык программирования, MATLAB слаб. Это не предназначен для работы с Python, Java, ActionScript, C / C ++ или любой другой язык общего назначения. Это предназначено для ниша инженерии и математики, как следует из названия, и делает это фантастически.
Matlab хорошо справляется с вычислением чисел. Также матрица и матричная манипуляция. Он имеет множество полезных встроенных библиотек (зависит от версии). Я думаю, что его проще использовать, чем python, если вы собираетесь вычислять уравнения.