小编Rya*_*axe的帖子

将时间列表转换为总时间

我有3个列表,一个用于小时,一个用于分钟,一个用于秒.我所做的是创建一个函数,将3个列表作为输入并计算总时间.

我的问题是函数是如此多余而我向你提出的问题是愚蠢的:什么是更好的方法来做到这一点.

这是我的功能:

def final_time(hours,minutes,seconds):
    draft_hours = sum(hours)
    draft_minutes = sum(minutes)
    draft_seconds = sum(seconds)
    adding_seconds = str(draft_seconds/60.0)
    second_converting = adding_seconds.split(".")
    seconds_to_minutes = int(second_converting[0])
    seconds_to_seconds = draft_seconds - (seconds_to_minutes * 60)
    total_seconds = str(seconds_to_seconds)
    more_minutes = draft_minutes + seconds_to_minutes
    adding_minutes = str(more_minutes/60.0)
    minute_converting = adding_minutes.split(".")
    minutes_to_hours = int(minute_converting[0])
    minutes_to_minutes = more_minutes - (minutes_to_hours * 60)
    total_minutes = str(minutes_to_minutes)
    total_hours = str(draft_hours + minutes_to_hours)
    return total_hours + " hours, " + total_minutes + " minutes, and " + total_seconds + " seconds." …
Run Code Online (Sandbox Code Playgroud)

python time function list

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

在DataFrame中抓取特定日期之间的选择

所以我有一个大型的pandas DataFrame,它包含大约两个月的信息,每秒有一行信息.方法太多,无法立即处理,所以我想抓住具体的时间表.以下代码将在2012年2月5日之前获取所有内容:

sunflower[sunflower['time'] < '2012-02-05']
Run Code Online (Sandbox Code Playgroud)

我想做相当于这个:

sunflower['2012-02-01' < sunflower['time'] < '2012-02-05']
Run Code Online (Sandbox Code Playgroud)

但这是不允许的.现在我可以用这两行来做到这一点:

step1 = sunflower[sunflower['time'] < '2012-02-05']
data = step1[step1['time'] > '2012-02-01']
Run Code Online (Sandbox Code Playgroud)

但是我必须使用20个不同的DataFrame进行多次,并且能够轻松地做到这一点会很好.我知道pandas是有能力的,因为如果我的日期是索引而不是列,那很容易做到,但它们不能成为索引,因为日期会重复,因此您会收到此错误:

Exception: Reindexing only valid with uniquely valued Index objects
Run Code Online (Sandbox Code Playgroud)

那我该怎么做呢?

python datetime pandas

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

jquery这不用于settimeout,bug?

所以我试图做一些动态悬停操作,这需要this在jquery中使用.由于某种原因,我无法弄清楚,javascript setTimeout函数似乎不支持它.

我明白该setTimeout函数不是Jquery,但是如果放在Jquery函数里面,它应该不能响应相关的this吗?

以下是一些示例代码:

var go = false;
var t;
$('.box').mouseenter(function(){
    t = setTimeout(function(){
        go = true;
        alert($('span',this).text());
    },1000);
});
$('.box').mouseleave(function(){
    clearTimeout(t);
    if(go){
        alert($('span',this).text());
    }
});
Run Code Online (Sandbox Code Playgroud)

当悬停1秒时它会提醒一个空白,但是在鼠标离开时它会提醒正确的文本,即使两个警报都在具有相同选择器的Jquery函数内.

为什么会发生这种情况,我该如何解决?

的jsfiddle

javascript jquery this settimeout

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

你能否在不知道格式的情况下使用datetime.strptime?

我正在编写一个带有3个pandas系列的函数,其中一个是日期,我需要能够将它变成一个数据帧,我可以通过它们重新采样.问题是,当我简单地执行以下操作时:

>>> data.index = data.time
>>> df = data.resample('M')
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pandas/core/generic.py", line 234, in resample
    return sampler.resample(self)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pandas/tseries/resample.py", line 100, in resample
    raise TypeError('Only valid with DatetimeIndex or PeriodIndex')
TypeError: Only valid with DatetimeIndex or PeriodIndex
Run Code Online (Sandbox Code Playgroud)

我知道这是因为即使索引类型是一个日期时间对象,在进行重新采样时,除非它在表单中datetime(x,x,x,x,x,x),否则它将无法正确读取.

所以当我使用它时,我的日期数据如下所示:2011-12-16 08:09:07所以我一直在做以下事情:

dates = data.time
date_objects = [datetime.strptime(dates[x], '%Y-%m-%d %H:%M:%S') for x in range(len(dates))]
data.index = date_objects 
df = data.resample('M')
Run Code Online (Sandbox Code Playgroud)

我的问题是我使用它作为开源,我不知道输入日期的格式.

所以我的问题是:如何在不知道字符串格式的方式的情况下,将具有日期和时间的字符串转换为日期时间对象?

python datetime pandas

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

始终在我的代码第102行出错

所以我正在创建一个模块,我将它导入到python shell并运行一些东西以确保所有功能都能正常工作等等.

出于某种原因,每次运行代码时,都会出现以下错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/ryansaxe/Desktop/Code/python/modules/pymaps.py", line 102, in url_maker
    #anything can be here
AttributeError: type object 'datetime.datetime' has no attribute 'datetime'
Run Code Online (Sandbox Code Playgroud)

所以,在#anything can be here我的代码的第102行是什么.最初的102行是:

if isinstance(startindex,datetime.datetime):
Run Code Online (Sandbox Code Playgroud)

我得到了上面的错误.我在第102行打了一个快速打印声明来检查并给出了同样的错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/ryansaxe/Desktop/Code/python/modules/pymaps.py", line 102, in url_maker
    print 'Hello'
AttributeError: type object 'datetime.datetime' has no attribute 'datetime'
Run Code Online (Sandbox Code Playgroud)

这是某种错误吗?为什么告诉我线上的日期时间有错误print 'Hello'

因为它可能会有所帮助,所以我会告诉你我遇到麻烦的功能,因为我不知道这是怎么回事.我保持这print 'Hello'条线,所以你可以看到第102行的位置:

def url_maker(latitudes,longitudes,times=None,color='red',label=' ',zoom=12,center=None,start=None,end=None,by=None,size='600x300'):
    urls …
Run Code Online (Sandbox Code Playgroud)

python error-handling datetime

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

这是python 2函数中的一个错误吗?

所以我创建了一个转置函数,可以选择添加列标题,我相信我遇到了python中的一个bug并使用了*args:

>>> def transpose(*args,header=None):
  File "<stdin>", line 1
    def transpose(*args,header=None):
                        ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

所以是的,因为*args是任意数量的值,你不能在它之后放任何东西,但是你应该能够放置variable=value因为那个变量有一个自动赋值使它与*args分开,因为你可以用它来调用它header=['col1','col2','col3']等等

以下内容不会出错:

def transpose(header=None,*args):
    #code goes here
Run Code Online (Sandbox Code Playgroud)

唯一的问题是,这使得函数的第一个输入被分配给头而不需要做header=value,做出header必要的输入,这不是我想要的,我肯定不是很多人使用任意创建函数想要的数量.

有了这个错误,它似乎不可能有一个使用*args和输入不是要求的功能.这是python中的错误吗?

注意:我使用的是python2.7,所以如果它是一个bug,它很可能只是该版本中的一个bug

python args

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

点击jquery创建的元素不起作用

我创建一个元素使用Jquery并给它类.book:

jQuery('<div/>', {
    name: "my name",
    class: 'book',
    text: 'Bookmark',
}).appendTo('body');
Run Code Online (Sandbox Code Playgroud)

然后我想在点击那个课时做点什么,所以我自然而然地写了一个快速简单的东西:

$('.book').click(function(){
    alert('I have been clicked');
});
Run Code Online (Sandbox Code Playgroud)

这样可行

什么不起作用,如果我有它在点击添加这些元素.所以以下不起作用:

var bms = 0;
$('button').click(function(){
    bms += 1;
    jQuery('<div/>', {
        name: bms,
        class: 'book',
        text: 'Bookmark ' + bms
    }).appendTo('body');
});
$('.book').click(function(){
    alert('I have been clicked');
});
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况,我该如何解决这个问题呢?

的jsfiddle

另一件事:

此外,如果我已经.book在我的身体中有一个div ,那么click事件将适用于那个,但不是任何附加div的.这是另一个证明这一点的方法

javascript jquery click

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

Java 为什么扫描仪不能在交换机内工作

我有一台扫描仪,询问一些偏好。它创建一个介于 0 和 3 之间的int变量choice。然后我执行以下操作:

String location;
switch(choice){
    case 0:
        System.out.println("Please type the zip codes you would like to search in a comma separated list");
        location = input.nextLine();
        break;
    case 1:
        System.out.println("Please type the street names you would like to search in a comma separated list");
        location = input.nextLine().toUpperCase();
        break;
    case 2:
        System.out.println("Please type the boroughs you would like to search in a comma separated list");
        location = input.nextLine().toUpperCase();
        break;
    default:
        location = "none";
        break;
    } …
Run Code Online (Sandbox Code Playgroud)

java input switch-statement java.util.scanner

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

getpass无法正常工作

所以我不知道我是否遗漏了一些文档,但我有两个问题getpass.

  1. 我似乎无法保存密码

  2. 它之后回复密码

    >>> pass = getpass.getpass()
      File "<stdin>", line 1
    pass = getpass.getpass()
         ^
    SyntaxError: invalid syntax
    >>> getpass.getpass()
    Password: 
    'ryan'
    
    Run Code Online (Sandbox Code Playgroud)

难道我做错了什么?

python security passwords python-2.7

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

Django检查用户创建时间

因此,在任何Django项目中,通过重写save方法来判断是否已创建对象非常简单:

def save(self, *args, **kwargs):
    created = False
    if not self.pk:
        created = True
    super(ModelName, self).save(*args,**kwargs)
    if created:
        #do what you want or call a signal
Run Code Online (Sandbox Code Playgroud)

但是我需要User在从django.contrib.auth.models.User创建一个函数之后调用一个函数.我宁愿不必实际编辑用户模型的save方法.

我怎么能这样做?

注意:

使用pre_save将无法工作,因为模型中的所有信息都不可用,这是必要的.

python django

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