小编rGi*_*Gil的帖子

如何将unicode类型与python中的字符串进行比较?

我试图使用比较字符串对象的列表理解,但其中一个字符串是utf-8,json.loads的副产品.场景:

us = u'MyString' # is the utf-8 string
Run Code Online (Sandbox Code Playgroud)

我的问题的第一部分,为什么这会返回False?:

us.encode('utf-8') == "MyString" ## False
Run Code Online (Sandbox Code Playgroud)

第二部分 - 如何在列表理解中进行比较?

myComp = [utfString for utfString in jsonLoadsObj
           if utfString.encode('utf-8') == "MyString"] #wrapped to read on S.O.
Run Code Online (Sandbox Code Playgroud)

编辑:我正在使用使用Python 2.7的Google App Engine

这是一个更完整的问题示例:

#json coming from remote server:
#response object looks like:  {"number1":"first", "number2":"second"}

data = json.loads(response)
k = data.keys()

I need something like:
myList = [item for item in k if item=="number1"]  

#### I thought this would work:
myList = [item for item …
Run Code Online (Sandbox Code Playgroud)

python unicode list-comprehension python-2.7

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

angularjs - 返回JSONP时不执行HTTPpromise

我试图从雅虎的api获得股票报价,我正在使用angular的$ http.jsonp方法.目标是当结果返回时,让应用程序转到这条路线:'/ stocks/show_stock'.我试图以两种方式做到这一点并且都不起作用1)我发表声明:

window.location = '/stocks/show_stock'
Run Code Online (Sandbox Code Playgroud)

在包装JSONP响应的回调函数中2)我把语句:

$location.path '/stocks/show_stock'
Run Code Online (Sandbox Code Playgroud)

在HTTPpromise回调中.(参见代码中的注释)

这是我的代码(在coffescript中):

#THIS IS THE CALLBACK FUNCTION THAT I SEND WITH THE JSONP REQUEST  
window.stock_quote_callback = (data)->
  console.log data #THIS WORKS AND I CAN SEE THE DATA RETURNED FROM YAHOO
  window.stock_quote_result = data.results
  alert 'I am in the callback'
  #THE STATEMENT BELOW DOES NOT WORK EVEN THOUGH I CAN SEE THE ALERT ABOVE
  window.location = '/stocks/show_stock'

angular.module('Services').service 'StockSupplier', ($http)->
  get_stock = (symbol)->
    q = 'select * from yahoo.finance.quotes 
        where symbol in …
Run Code Online (Sandbox Code Playgroud)

jsonp coffeescript angularjs

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

如何使用angularjs $ http来修复我的jsonp回调以解决"意外令牌"错误?

从谷歌应用程序脚本接收jsonp的规范不会在返回数据中导致"意外令牌".

我正在使用angularjs $ http.jsonp - 它不喜欢语法?prefix =?在我的URL谷歌应用程序脚本的末尾.

这适用于jQuery,但我试图通过这个应用程序的所有角度.这是我从以前的用户分叉小提琴.这是请求,这很好:

function jsonp_example($scope, $http) {
$scope.doRequest = function() {
    var url = "https://script.google.com/macros/s/AKfycbyTnhcsnyXKJqZdF8yAppVQjXX935J9-YTJOHyf7jkea16gSsOA/dev?prefix=?";

    $http.jsonp(url);
};
Run Code Online (Sandbox Code Playgroud)

请打开控制台.

ajax jsonp google-apps-script angularjs

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

如何在Google Apps脚本中使用AngularJS与服务器进行通信

最近,通过iframe沙盒模式,可以在Google Apps脚本中使用angularjs。

当尝试与服务器(gapps电子表格)进行通信并接收异步数据作为回报时,我遇到了问题。

从服务器接收数据的实现是使用带有回调函数的函数,如下所示:

google.script.run.withSuccessHandler(dataGatheringFunction).getServerData();
Run Code Online (Sandbox Code Playgroud)

getServerData()将是驻留在服务器端的函数,通常会从随附的电子表格中返回一些数据。我的问题是如何在AngularJS的参数内使用回调函数。$http可以将典型函数放在提供程序中,并且可以在then.()返回后填充范围值。我也可以调用$q。但是我将如何处理Google回调的必要性?

这是到目前为止我所用的简化版本:

app.factory("myFactory", function($q){

  function ssData(){
  var TssData = function(z){
  return z;
}
google.script.run.withSuccessHandler(TssData).getServerData();
var deferred = $q.defer();
var d = deferred.resolve(TssData)
console.log("DP: " + deferred.promise);
return deferred.promise;
}  
return ssData();
})
Run Code Online (Sandbox Code Playgroud)

然后在控制器中解析类似于以下内容的服务器调用:myFactory.then(在此处设置一些变量和返回数据

我的问题很简单-如何在提供程序中处理该回调函数?

该脚本不会引发任何错误,但是不会从服务器返回数据。我可以使用旧的$ timeout技巧来检索数据,但是应该有更好的方法。

google-apps-script angularjs

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

在angularjs中为什么ng-click一个元素也会触发元素属性中的其他方法调用?

我正在学习angularJS,并试图理解为什么在实际只调用一个方法时会调用多个方法.在这一行:

<li  ng-repeat="i in names" style="position: relative; top:{{mar(i)}}px; z-index:{{i}}; background-color: orange;" ng-click="clicker(i, $index)">{{i + " " + $index}}</li>
Run Code Online (Sandbox Code Playgroud)

所以我在这行中有两个"电话":

  1. 在style属性中 - 这会计算顶部偏移量.
  2. ng-click =我的函数在单击元素时执行操作.

当我单击元素时 - mar(i)被称为ALONG with ng-click功能.

我只是想了解为什么会发生这种情况.我有一个你可以尝试的插件.

javascript angularjs

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