小编mpl*_*lis的帖子

Django 1.6:如何在视图中访问静态文件

我已经在这里尝试了解决方案,它对我不起作用.我正在创建一个基于Heroku"入门"项目的Python项目.

views.py,我希望能够访问该文件static/data/夹中的文件.但是,我为创建文件的正确URL所做的大部分尝试都失败了.唯一有效的方法是将文件的绝对路径放在我本地文件系统上,因为当我部署应用程序时,这显然无效.

以前尝试打开该文件包括:

from django.templatetags.static import static
url = static('data/foobar.csv')
os.path.isfile(url) # False

from django.conf import settings
url = os.path.join(settings.STATIC_URL, 'data/foobar.csv')
os.path.isfile(url) # False
Run Code Online (Sandbox Code Playgroud)

这是我的目录结构:

/appname
  /app
    /templates
    views.py
  /appname
    /static
      /js
      /css
      /data
    settings.py
    urls.py
Run Code Online (Sandbox Code Playgroud)

settings.py:

BASE_DIR = os.path.dirname(os.path.abspath(__file__))

DEBUG = True

TEMPLATE_DEBUG = True

ALLOWED_HOSTS = []

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'app'
)

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
)

ROOT_URLCONF = 'appname.urls'

WSGI_APPLICATION …
Run Code Online (Sandbox Code Playgroud)

python django heroku

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

使用Scala中的Option [String]格式化

我试图找到一种简洁的方法来使用Scala中的Option [String]格式化String.我有一个标题字符串和一个副标题选项[字符串].这就是我所拥有的,但我觉得必须有更好的方法:

"Title%s".format(subtitle match
    {case Some(s) => ": %s".format(s)
     case None    => "" })
Run Code Online (Sandbox Code Playgroud)

所以,如果我有一个副标题,我想要"标题:副标题",但如果是副标题None,我只想要"标题".

scala

6
推荐指数
2
解决办法
1180
查看次数

Scala排序选项

如果我有这样的案例类

case class Foo(bar: Option[String])
Run Code Online (Sandbox Code Playgroud)

为什么这样做

scala> val l = List(Foo(Some("b")), Foo(Some("a")), Foo(Some("c")))
l: List[Foo] = List(Foo(Some(b)), Foo(Some(a)), Foo(Some(c)))
scala> l.sortBy(_.bar)
res1: List[Foo] = List(Foo(Some(a)), Foo(Some(b)), Foo(Some(c)))
Run Code Online (Sandbox Code Playgroud)

但不是这个

scala> l.sortWith((x,y) => x.bar > y.bar)
<console>:11: error: value > is not a member of Option[String]
          l.sortWith((x,y) => x.bar > y.bar)
Run Code Online (Sandbox Code Playgroud)

如果我要排序ListOption[String]降序排列,它只是简单的使用sortBy,然后reverse在列表中?

scala

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

如果过滤器功能导致列表为空,则返回未过滤的列表

如果调用原始未过滤列表,如果filter返回空列表,否则返回过滤列表,我该如何返回呢?

scala> val l = List(1,2,3)
scala> l.filter(_ == 4)
res1: List[Int] = List() // would like this to be List(1,2,3)
scala> l.filter(_ == 3)
res: List[Int] = List(3) // want to maintain this behavior
Run Code Online (Sandbox Code Playgroud)

scala

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

Python - 如何从文件的相同部分提取音频和视频?

我的目标是分析视频文件(在这种情况下是mp4文件)以发现某些功能,并创建一个新的视频文件,其中包含视频和音频,这些视频和音频只是在这些功能发生之前和稍后.

我正在使用Python/OpenCV,可以正确识别视频中的功能,并可以创建我想要的新视频文件.

我也可以使用该subprocess模块并ffmpeg从原始文件中提取完整的音频,我可以使用该wave模块迭代音频帧.我还打算用它ffmpeg来组合生成的音频和视频文件.

我的问题是提取与新的精简视频文件中的帧匹配的音频.原始视频文件中的帧数(根据OpenCV)不等于返回的帧数Wave.getnframes(),因此我不确定如何只提取我需要的音频.

python audio video opencv ffmpeg

5
推荐指数
0
解决办法
1119
查看次数

从案例类中提取Option而忽略None

我有一系列像这样的案例类

case class Foo(..., bar: Option[A], ...)
Run Code Online (Sandbox Code Playgroud)

我想把它变成一个Seq[(Foo, A)],在那里我提取Afrom barSeq唯一包含Foo的地方bar不是None.这是我现在的实现,但它调用的事实get使我认为有更好的方法来做到这一点:

val seqOfTuples = seqOfFoos.collect {
    case foo if foo.bar.isDefined => (foo, foo.bar.get)
}
Run Code Online (Sandbox Code Playgroud)

scala

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

从Option case类中提取Option时如何指定默认值

如果我将案例类定义为:

case class Foo(bar: Option[String])
Run Code Online (Sandbox Code Playgroud)

和可变baz: Option[Foo],什么是最习惯的方法来提取barbaz,而像一个空字符串提供默认值?

现在,我有

baz.fold("")(_.bar.getOrElse(""))
Run Code Online (Sandbox Code Playgroud)

但是在那里有两个空字符串让我觉得有更好的方法.

scala

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

标签 统计

scala ×5

python ×2

audio ×1

django ×1

ffmpeg ×1

heroku ×1

opencv ×1

video ×1