Наконецто появилась сборка 1.1.1 под Windows. На момент релиза этой версии на официальном сейте не имелось сборок для Windows и MacOS.
http://releases.qt-project.org/pyside/1.1.1/
http://releases.qt-project.org/pyside/1.1.1/
package
{
import flash.display.Sprite;
import System.Collection.Generic.IGrouping;
import System.Linq.Enumerable;
/**
* ...
* @author ami...[at]mail.ru
*/
public class AcLinq extends Sprite
{
public function AcLinq()
{
var data:Array = [ { name: "Сергей", age: 20, city: "Москва" },
{ name: "Максим", age: 21, city: "Москва" },
{ name: "Володя", age: 25, city: "Минск" },
{ name: "Сергей", age: 19, city: "Минск" } ];
var new_data:Array = Enumerable.from(data).groupBy(function(name:Object):String
{
return name.name;
},
function(values:Object):Object
{
return {age: values.age, city: values.city};
},
function(name:String, vals:IGrouping):Object
{
return { name: name, count:vals.count() };
}).toArray();
/*
* А получаем мы в итоге нечто вроде
* Сергей, 2
* Володя, 1
* Максим, 1*/
trace(new_data);
}
}
}
А самым удобным является что внутри конструкций function() можно определять любые стандартные операторы и конструкции ActionScript и возвращать нужные значения.# coding=utf-8
import sys
from PySide import QtGui, QtSql, QtCore
#приложение
main=QtGui.QApplication(sys.argv)
#подключение база
dbase = QtSql.QSqlDatabase.addDatabase('QSQLITE')
#файл базы
dbase.setDatabaseName('my_db.sqlite')
dbase.open()
query=QtSql.QSqlQuery()
#Создаем базу
query.exec_('CREATE TABLE my_table (number integer PRIMARY KEY NOT NULL, address VARCHAR(255), age integer);')
query.exec_(u'INSERT INTO my_table(number, address, age) VALUES (1, "Варшавское 2", 54);')
query.exec_(u'INSERT INTO my_table(number, address, age) VALUES (2, "Ленина 5", 4);')
#типа DBGird
view = QtGui.QTableView()
#типа Table
model = QtSql.QSqlTableModel()
model.setTable('my_table')
model.select()
model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange)
view.setModel(model)
view.show()
main.exec_()
Подробнее на C++