PySpark 2.1. Безножки с нулевым плюсом [дубликат]

Вы не объявляете свойства; просто установите this._name = name.

@Ryan Как мне получить доступ к переменной экземпляра в моем прослушивателе событий? this._name просто дает undefined.

Каждый вызов функции * работает со своим this; ваш слушатель событий является функцией. Вы можете назначить var that = this; вне прослушивателя событий и получить доступ к нему that:

myFunction() {
  var that = this;

  document.getElementById("myElement").addEventListener("click", function() {
    console.log(that._name);
  });
}

Или создать новую функцию, которая всегда вызывает ваш с тем же this, используя Function.prototype.bind:

myFunction() {
  document.getElementById("myElement").addEventListener("click", function() {
    console.log(this._name);
  }.bind(this));
}

Или используйте функции стрелок ES6, которые используют значение this, где они были определены (лексический this):

myFunction() {
  document.getElementById("myElement").addEventListener("click", () => {
    console.log(this._name);
  });
}
-1
задан user6910411 29 December 2016 в 09:25
поделиться

1 ответ

Для числовых типов вы можете использовать format_string:

from pyspark.sql.functions import format_string

(sc.parallelize([(271, ), (20, ), (3, )])
    .toDF(["val"])
    .select(format_string("%03d", "val"))
    .show())
+------------------------+
|format_string(%03d, val)|
+------------------------+
|                     271|
|                     020|
|                     003|
+------------------------+

Для строк lpad:

from pyspark.sql.functions import lpad

(sc.parallelize([("271", ), ("20", ), ("3", )])
    .toDF(["val"])
    .select(lpad("val", 3, "0"))
    .show())
+---------------+
|lpad(val, 3, 0)|
+---------------+
|            271|
|            020|
|            003|
+---------------+
3
ответ дан user6910411 19 August 2018 в 06:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: