小编Nan*_*nor的帖子

将压缩对象放入字典中

我的对象zipped实例化如下:

zipped = zip(_artist_name, _artist_title, _xl, _l, _m, _s)

其中参数每个都是 30 个字符串的数组。我有一本字典track_data,在键下recent_tracks有更多的键值对,如下所示:

track_data['recent_tracks'] = [
    {"artist": ?,
     "title": ?,
     "image_xl": ?,
     "image_l": ?,
     "image_m": ?,
     "image_s": ?}
]
Run Code Online (Sandbox Code Playgroud)

我想要track_data['recent_tracks']包含 30 个对象,其中每个对象包含 6 个子对象。有点像这样:

object 1 - artist
           title
           xl
           l
           m
           s
object 2 - artist
           title
           xl
           l
           m
           s
Run Code Online (Sandbox Code Playgroud)

我之前使用的方法与上面的示例类似,但它只是创建一个包含 6 个数组和 30 个对象的对象。如何迭代压缩项目以将正确的值分配给 30 个单独对象中的相应对?

python dictionary

3
推荐指数
1
解决办法
4517
查看次数

使用 Tkinter 插入文本框

我正在尝试使用 Tkinter 将文本插入到文本框中。我正在尝试插入从文件中检索到的信息,但我已将其简化为表现出相同问题的更简单的内容:

class Main(Frame):
    def __init__(self, parent):
        Frame.__init__(self, parent)
        self.parent = parent
        self.init_ui()

    def helloCallBack(self):
        self.txt.insert("lol")

    def init_ui(self):    
        self.txt = Text(root, width=24, height = 10).grid(column=0, row = 0)

        load_button = Button(root, text="Load Wave Data", command = self.helloCallBack).grid(column=1, row = 0, sticky="E")

def main():
    ex = Main(root)
    root.geometry("300x250+300+300")
    root.mainloop()
Run Code Online (Sandbox Code Playgroud)

我想要它做的是每当我按下按钮时它就会插入lol文本框,但我收到错误

AttributeError: 'NoneType' object has no attribute 'insert'

我该如何解决?

python tkinter

3
推荐指数
1
解决办法
1万
查看次数

在Django中向查询集添加属性

我正在创建一个消息传递系统,我想要做的部分是基于用户是消息的发送者还是接收者,不同的CSS加载.我试图通过将属性附加到标识这个的每个消息对象来实现此目的.

我有我的信息

#models.py
class Message(models.Model):
    def __unicode__(self):
        return unicode(self.time_date)

    message_from = models.ForeignKey(User, related_name="%(class)s_message_from")
    message_to = models.ForeignKey(User, related_name="%(class)s_message_to")
    message = models.TextField()
    file = models.FileField(blank=True, null=True)
    read = models.BooleanField(default=False)
    time_date = models.DateTimeField(default=django.utils.timezone.now)
    job = models.ForeignKey(Job, blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)

以及我获取消息的观点:

def view_messages(request):
    messages = Message.objects.filter(message_to=request.user, job_id=None).distinct('message_from')
    messages_from_user_ids = messages.values_list('message_from', flat=True).distinct()

    messages_from_user = User.objects.filter(id__in=messages_from_user_ids)

    messages = Message.objects.filter(
        Q(message_to=request.user) & Q(message_from_id=messages_from_user_ids[0]) & Q(job_id=None) | Q(
            message_from_id=messages_from_user_ids[0]) & Q(
            message_from_id=request.user) & Q(job_id=None)).order_by('time_date')

    messages = Message.objects.annotate(foo='true') # error

    return render(request, 'freelancestudent/general/messages.html', {'messages': messages,
                                                                      'messages_from': messages_from_user})
Run Code Online (Sandbox Code Playgroud)

我在线评论错误中试图实现的是简单地通过将字符串注释到每个可在其下访问的消息对象来测试注释.这给了我错误. …

python django

3
推荐指数
1
解决办法
3286
查看次数

加载路径文件到分区表

我正在尝试通过运行以下命令将文件本地加载到 Hive 中:

LOAD DATA INPATH '/data/work/hive/staging/ExampleData.csv' INTO TABLE tablename;

这给了我错误:

SemanticException [错误 10062]:需要指定分区列,因为目标表已分区(状态 = 42000,代码 = 10062)

我找到的一个答案建议创建一个中间表,然后让动态分区启动以加载到分区表中。

我创建了一个与数据匹配的表并将其截断:

create table temptablename as select * from tablename;
truncate table temptablename
Run Code Online (Sandbox Code Playgroud)

然后使用以下方法加载数据:

LOAD DATA INPATH '/data/work/hive/staging/ExampleData.csv' INTO TABLE temptablename;
Run Code Online (Sandbox Code Playgroud)

我如何“启动”动态分区?

hadoop hive

3
推荐指数
1
解决办法
3069
查看次数

Python中的列表变得非常复杂

我有一个简单的函数,它将2D列表作为参数:

def get_noise_estimate(imag_array):
    temp = []

    temp.append(imag_array[:20])
    temp.append(imag_array[-20:])
Run Code Online (Sandbox Code Playgroud)

在示例实例中,它具有305个元素,每个元素具有129个元素.我想这里有305列,每列有129行.我用调试器发现了这些东西:

>>> len(imag_array)
305

>>> len(imag_array[0])
129
Run Code Online (Sandbox Code Playgroud)

当我获得数组的前20个和后20个'列'并将其附加到temp我得到以下内容:

>>> len(temp)
2
>>> len(temp[0])
20
>>> len(temp[1])
20
>>> len(temp[0][0])
129
Run Code Online (Sandbox Code Playgroud)

我的temp名单变得非常混乱.我想要len(temp)等于40而不是20块.为了说明我的意思,我将展示如何在Java中做类似的事情:

int[] temp = new int[40];

for(int i = 0; i < 20; i++){
    temp[i] = imag_array[i];
}

for(int i = 0; i < 20; i++){
   temp[i+20] = imag_array[imag_array.length-i]
}
Run Code Online (Sandbox Code Playgroud)

以上是我的头脑,但我希望它能说明我的目标.

python

2
推荐指数
1
解决办法
92
查看次数

无法执行'getImageData' - 画布已被跨源数据污染

我有兴趣在我的网站上使用smartcrop.js和一些用户上传的图像.用户可以将任何大小的图像上传到我的Amazon S3存储桶.然后,该图像与用户相关联,当他们访问他们的个人资料时,他们可以看到图像很好地裁剪.当我尝试在图像元素上使用smartcrop执行某种操作时,我得到错误:

smartcrop.js:282 Uncaught DOMException: Failed to execute 'getImageData' on 'CanvasRenderingContext2D': The canvas has been tainted by cross-origin data.

这可以通过以下步骤重现:

var image = new Image();
image.src = "https://freelancestudent.s3.amazonaws.com/files/google.png"
SmartCrop.crop(image, {width: 100, height: 100}, function(result){console.log(result);});
smartcrop.js:282 Uncaught DOMException: Failed to execute 'getImageData' on 'CanvasRenderingContext2D': The canvas has been tainted by cross-origin data.
Run Code Online (Sandbox Code Playgroud)

我在S3控制面板中检查了CORS配置编辑器,它看起来像这样:

<CORSConfiguration>
    <CORSRule>
        <AllowedOrigin>*</AllowedOrigin>
        <AllowedMethod>GET</AllowedMethod>
        <MaxAgeSeconds>3000</MaxAgeSeconds>
        <AllowedHeader>Authorization</AllowedHeader>
    </CORSRule>
</CORSConfiguration>
Run Code Online (Sandbox Code Playgroud)

我的理解是,<AllowedOrigin>*</AllowedOrigin>应该意味着这个问题不应该存在?我已经阅读了一个解决方案,我可以将图像保存到服务器进行显示,但我希望保持静态文件和生产服务器分开.有任何想法吗?

javascript canvas amazon-s3

2
推荐指数
1
解决办法
1万
查看次数

如何一次遍历两个列表?

假设我有两个列表,foobar实例化如下:

foo = ['Hello', 'Yes', 'No']
bar = ['Bonjour', 'Oui', 'Non']
Run Code Online (Sandbox Code Playgroud)

那么,假设我想遍历这些值并打印如下的连接:

count = 0
for x in foo:
    print x + bar[count]
    count += 1
Run Code Online (Sandbox Code Playgroud)

哪个会给我:

HelloBonjour

YesOui

NONON

是否有方法不需要计数迭代器?也许是......

for x in foo and y in bar:
    pint x + y
Run Code Online (Sandbox Code Playgroud)

可以吗?

python list

1
推荐指数
1
解决办法
143
查看次数

jQueryUI自动完成功能隐藏在模态背后

是模态在哪里以及如何不出现的图像。我如何解决它?

OP

我使用的是与基本相同的jQuery UI模式。当我打开页面并单击以打开注册方式时,我会看到一个应自动完成的文本框。当我放入匹配字符串的一部分时,什么也没有出现。但是,如果我按键盘上的向上或向下箭头,它将在比赛中滚动。这使我相信它隐藏在模态背后。

有问题的模态如下:

<div class="remodal" data-remodal-id="modal2">
      <div class="logot">
        <div class="favicon"><img src="{% static 'img/favicon.png' %}" /></div>
        <h1>Complete the form to build your profile</h1>
        <div class="logot-iner">
          <form>
          <p>
            My name is &nbsp;&nbsp;
            <input id="firstname" type="text" placeholder="first name" />
            &nbsp;&nbsp;
            <input id="lastname" type="text" placeholder="last name" />
            and I am a  &nbsp;&nbsp;<span class="type">
            <select id="studenttype">
              <option>Full Time</option>
              <option>Part Time</option>
            </select>
            </span> &nbsp;&nbsp; student
            <br />
            <br />
            I am completing a  &nbsp;&nbsp; <span class="type">
            <select id="degreetype">
              <option>Bachelors</option>
              <option>Masters</option>
              <option>Postgraduate</option> …
Run Code Online (Sandbox Code Playgroud)

javascript jquery jquery-ui

1
推荐指数
2
解决办法
2256
查看次数