如何在XCode的数据模型编辑器中添加一个Fetched属性,以获得一个属性的最小值?
我的模特:
型号http://www.freeimagehosting.net/uploads/b48853070e.png
Item (name, note, storedItem)
StoredItem (price, item)
Item 1 ---> N StoredITem (1->N Relationship)
Run Code Online (Sandbox Code Playgroud)
我希望Item有一个名为minPrice的fetched属性,它的值是storedItems中为price设置的最小值.
例:
Item1 (banana, storedItem1 ... storedItem4, 10)
StoredItem1 (10,item1)
StoredItem2 (15,item1)
StoredItem3 (30,item1)
StoredItem4 (54,item1)
Run Code Online (Sandbox Code Playgroud)
我在目的地放什么?StoredItem?
数据模型编辑器中的提取属性http://www.freeimagehosting.net/uploads/2a68de007d.png
我将什么表达?
数据模型编辑器中的表达式http://www.freeimagehosting.net/uploads/766ab9af6f.png
首先,相关应用程序始终位于同一处理器上,并且编译器始终为 gcc,因此我不担心位域不可移植。
gcc 布局位字段,使得第一个列出的字段对应于字节的最低有效位。因此,在以下结构中,a = 0,b = 1,c = 1,d = 1,您将得到一个字节值 e0。
struct Bits {
unsigned int a:5;
unsigned int b:1;
unsigned int c:1;
unsigned int d:1;
} __attribute__((__packed__));
Run Code Online (Sandbox Code Playgroud)
(实际上,这是C++,所以我说的是g++。)
现在假设我希望a是一个六位整数。
现在,我明白为什么这不起作用,但我编写了以下结构:
struct Bits2 {
unsigned int a:6;
unsigned int b:1;
unsigned int c:1;
unsigned int d:1;
} __attribute__((__packed__));
Run Code Online (Sandbox Code Playgroud)
将b、c和d设置为 1,将a设置为 0 会产生以下两个字节:
c0 01
Run Code Online (Sandbox Code Playgroud)
这不是我想要的。我希望看到这个:
e0 00
Run Code Online (Sandbox Code Playgroud)
有没有办法指定一个结构,该结构在第一个字节的最高有效位中具有三位,并且在第一个字节的五个最低有效位和第二个字节的最高有效位中具有六个位?
请注意,我无法控制这些位的布局位置:它是由其他人的接口定义的位布局。
我在一个单独的目录(它的sqlite3.h)中有一些外部头文件.我希望能够在我的Eclipse CDT项目中使用它们.我如何将目录包含在Eclipse中?
当我第一次开始阅读Python时,所有教程都使用Python的交互模式.很难保存,编写长程序或编辑现有的行(至少对我来说).编写Python代码似乎比打开code.py文件并在该文件上运行解释器要困难得多.
python code.py
Run Code Online (Sandbox Code Playgroud)
我来自Java背景,所以我已经根深蒂固地希望为程序编写和编译文件.我也知道,如果某个功能在某些方面没有用处,那么它在Python文档中就不那么突出了.那我错过了什么?
我有一个CSV文件,其格式如下所示:
"FieldName1","FieldName2","FieldName3","FieldName4"
"04/13/2010 14:45:07.008","7.59484916392","10","6.552373"
"04/13/2010 14:45:22.010 ","6.55478493312","9","3.5378543"
......
请注意,CSV文件中每行的开头和结尾都有双引号字符,该","字符串用于分隔每行中的字段.CSV文件中的字段数可能因文件而异.
当我尝试将其读入numpy via时:
import numpy as np
data = np.genfromtxt(csvfile, dtype=None, delimiter=',', names=True)
所有数据都以字符串值的形式读入,由双引号字符包围.这不是不合理的,但对我来说没什么用处,因为我必须返回并将每列转换为正确的类型
当我使用时delimiter='","',除了第一个和最后一个字段外,一切都按照我的意愿运行.由于行和行尾字符的开头是单个双引号字符,因此不会将其视为第1个和最后一个字段的有效分隔符,因此它们会被读入,例如,"04/13/2010 14:45:07.008并且6.552373"- 请注意前导和尾部双字符-分别引用字符.由于这些冗余字符,numpy假设第1个和最后一个字段都是字符串类型; 我不希望如此
是否有一种方法可以指示numpy按照我的方式读取以这种方式格式化的文件,而不必在初始读取后返回并"修复"numpy数组的结构?
我有一个time_select,我在其中设置时间值如下;
<%= f.time_select :start_time, :value => (@invoice.start_time ? @invoice.start_time : Time.now) %>
Run Code Online (Sandbox Code Playgroud)
这总是产生一个时间选择器,其中包含当前时间而不是@ invoice.start_time的值.
@ invoice.start_time实际上是一个datetime对象,但如果我使用的话,这会被传递给时间选择器
<%= f.time_select :start_time %>
Run Code Online (Sandbox Code Playgroud)
我想我真正想问的是如何使用:value选项和time_select帮助器.像下面这样的尝试似乎没有产生预期的结果;
<%= f.time_select :start_time, :value => (Time.now + 2.hours) %>
<%= f.time_select :start_time, :value => "14:30" %>
Run Code Online (Sandbox Code Playgroud) 我很头疼地寻找这个:你如何在表达式中使用s ///而不是赋值.为了澄清我的意思,我在下面的上下文中使用时,我正在寻找一个perl等效的python的re.sub(...):
newstring = re.sub('ab', 'cd', oldstring)
Run Code Online (Sandbox Code Playgroud)
到目前为止,我知道如何在perl中执行此操作的唯一方法是:
$oldstring =~ s/ab/cd/;
$newstring = $oldstring;
Run Code Online (Sandbox Code Playgroud)
请注意额外的分配.
我有时使用 json 和 jsonpickle 将对象序列化到文件,使用以下函数:
def json_serialize(obj, filename, use_jsonpickle=True):
f = open(filename, 'w')
if use_jsonpickle:
import jsonpickle
json_obj = jsonpickle.encode(obj)
f.write(json_obj)
else:
simplejson.dump(obj, f)
f.close()
Run Code Online (Sandbox Code Playgroud)
问题是,如果我使用“json_serialize(mydict, myfilename)”序列化一本字典,那么整个序列化就会放在一行上。这意味着我无法像 CSV 文件一样对文件进行 grep 手动检查条目。有没有办法将对象的每个元素(例如字典中的每个条目或列表中的每个元素)放置在 JSON 输出文件中的单独行上?
谢谢。
没有其他容器(如矢量)的帮助,我是否可以使地图的键与插入序列的顺序相同?
#include <map>
#include <iostream>
using namespace std;
int main()
{
map<const char*, int> m;
m["c"] = 2;
m["b"] = 2;
m["a"] = 2;
m["d"] = 2;
for (map<const char*, int>::iterator begin = m.begin(); begin != m.end(); begin++) {
// How can I get the loop sequence same as my insert sequence.
// c, b, a, d
std::cout << begin->first << std::endl;
}
getchar();
}
Run Code Online (Sandbox Code Playgroud) python ×4
c ×2
c++ ×2
bit-fields ×1
cocoa ×1
core-data ×1
csv ×1
delimiter ×1
eclipse ×1
eclipse-cdt ×1
gcc ×1
helpers ×1
json ×1
jsonpickle ×1
minimum ×1
numpy ×1
perl ×1
pickle ×1
regex ×1
sql ×1
stl ×1
substitution ×1
time-select ×1
views ×1
xcode ×1