标签: append

Ruby - Array#<<和Array#push之间的区别

通过检查Ruby 1.9.3的文档,Array#<<和Array#push被设计为实现将元素附加到当前数组的末尾.但是,两者之间似乎存在微妙的差异.

我遇到的是*运算符可用于将整个其他数组的内容追加到当前数组,但只能使用#push.

a = [1,2,3]
b = [4,5,6]

a.push *b
=> [1,2,3,4,5,6]
Run Code Online (Sandbox Code Playgroud)

尝试使用#<<代替它会产生各种错误,具体取决于它是否与点运算符和/或括号一起使用.

为什么#<<不像#push那样工作?一个人实际上不是另一个的别名吗?

ruby arrays append

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

为什么append在此代码中没有返回?

list = [1, 2, 3]
print list.append(4)   ## WRONG, print does not work, append() returns None

## RIGHT:
list.append(4)
print list  ## [1, 2, 3, 4]
Run Code Online (Sandbox Code Playgroud)

我正在学习Python,我不确定这个问题是否特定于语言以及如何在Python中实现append.

python list append nonetype

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

jQuery追加一个元素数组

出于这个问题的目的,我们可以说我们需要append()1000个body元素对象.

你可以这样做:

for(x = 0; x < 1000; x++) {
    var element = $('<div>'+x+'</div>');
    $('body').append(element);
}
Run Code Online (Sandbox Code Playgroud)

这是有效的,但是对我来说似乎效率低,因为AFAIK会导致1000次文件回流.更好的解决方案是:

var elements = [];
for(x = 0; x < 1000; x++) {
    var element = $('<div>'+x+'</div>');
    elements.push(element);
}
$('body').append(elements);
Run Code Online (Sandbox Code Playgroud)

然而,这不是一个理想的世界,这会引发错误Could not convert JavaScript argument arg 0 [nsIDOMDocumentFragment.appendChild].我明白append()无法处理数组.

我将如何使用jQuery(我知道DocumentFragment节点,但假设我需要在元素上使用其他jQuery函数.css()),一次向DOM添加一堆对象以提高性能?

javascript arrays performance jquery append

48
推荐指数
4
解决办法
9万
查看次数

Python RuntimeWarning:在长标量中遇到溢出

我是编程新手.在我最新的Python 2.7项目中,我遇到了以下内容:

RuntimeWarning:在long_scalars中遇到溢出

有人可以详细说明这意味着什么以及我能做些什么来解决这个问题?

代码贯穿始终,但我不确定忽略警告是否是个好主意.

它发生在追加过程中,如:

SomeList.append(VeryLongFormula)
Run Code Online (Sandbox Code Playgroud)

python scalar numpy append overflow

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

在java中将单个字符附加到字符串或char数组中?

是否可以在java中将单个字符附加到数组或字符串的末尾

例如:

    private static void /*methodName*/ () {            
          String character = "a"
          String otherString = "helen";
          //this is where i need help, i would like to make the otherString become 
         // helena, is there a way to do this?               
      }
Run Code Online (Sandbox Code Playgroud)

java string append

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

R +将矢量列表组合成单个矢量

我有一个数字向量列表,我想将它们组合成一个向量.但我无法做到这一点.该列表可以在列表元素中具有一个共同的元素.最终的矢量不应该添加两次.这是一个例子:

>lst
`1`
[1] 1 2
`2`
[2] 2 4 5
`3`
[3] 5 9 1
Run Code Online (Sandbox Code Playgroud)

我想要最终结果

>result
[1] 1 2 4 5 9 1
Run Code Online (Sandbox Code Playgroud)

我试着做以下事情,而不用担心重复:

>vec<-vector()
>sapply(lst, append,vec)
Run Code Online (Sandbox Code Playgroud)

>vec<-vector()
>sapply(lst, c, vec)
Run Code Online (Sandbox Code Playgroud)

他们都没有工作.有人可以帮我吗?

谢谢.

r list vector append sapply

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

访问刚刚附加到DOM的jquery元素

我只是添加一个DOM上的元素,如:

$("#div_element").append('<a href="#">test</a>');
Run Code Online (Sandbox Code Playgroud)

在我追加它之后,我需要访问我刚刚创建的元素以便将click函数绑定到它,我试过:

$("#div_element").append('<a href="#">test</a>').click(function(){alert("test")});
Run Code Online (Sandbox Code Playgroud)

但上述方法无效.我可以唯一地识别元素,但这似乎有点工作,或许有一种方法,我可以在我追加它后立即获得元素.

javascript jquery append

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

我们再来一次:将一个元素附加到R中的列表中

对于在摊销的常数时间内将对象附加到R中的列表,我不满意

> list1 <- list("foo", pi)
> bar <- list("A", "B")
Run Code Online (Sandbox Code Playgroud)

我怎么能新元素追加barlist1?显然,c()不起作用,它变平bar:

> c(list1, bar)
[[1]]
[1] "foo"

[[2]]
[1] 3.141593

[[3]]
[1] "A"

[[4]]
[1] "B"
Run Code Online (Sandbox Code Playgroud)

索引作业的分配:

> list1[[length(list1)+1]] <- bar
> list1
[[1]]
[1] "foo"

[[2]]
[1] 3.141593

[[3]]
[[3]][[1]]
[1] "A"

[[3]][[2]]
[1] "B"
Run Code Online (Sandbox Code Playgroud)

这种方法的效率是多少?有更优雅的方式吗?

performance r list append

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

如果新文件不存在,则写入新文件,如果存在则附加到文件

我有一个程序将用户写入highscore文本文件.用户在选择文件时会命名该文件playername.

如果具有该特定用户名的文件已存在,则程序应附加到该文件(以便您可以看到多个用户名highscore).如果不存在具有该用户名的文件(例如,如果用户是新用户),则应创建新文件并写入该文件.

这是相关的,迄今为止不起作用的代码:

try: 
    with open(player): #player is the varible storing the username input
        with open(player, 'a') as highscore:
            highscore.write("Username:", player)

except IOError:
    with open(player + ".txt", 'w') as highscore:
        highscore.write("Username:", player)
Run Code Online (Sandbox Code Playgroud)

上面的代码创建一个新文件(如果它不存在)并写入它.如果它存在,检查文件时没有附加任何内容,我没有错误.

python file append python-3.x

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

jQuery附加文本

我想在div中添加一些简单数据,如:

$('#msg').append('Some text');
Run Code Online (Sandbox Code Playgroud)

在身体里,我想我需要把html放在一边.

<div id="test">    

<div id="msg"></div>  //show text inside it.

</div>
Run Code Online (Sandbox Code Playgroud)

但是,我想添加一些CSS #msg.例如,背景颜色.现在的问题是,由于#msgdiv始终存在,即使未附加文本,我也会看到背景颜色.我试图添加css,如"display:none,但在那种情况下,我看不到附加到它的文本.我可以这样做,以便#msgdiv #test只在文本被附加到它内部时出现吗?谢谢.

html css jquery append

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

标签 统计

append ×10

jquery ×3

list ×3

python ×3

arrays ×2

javascript ×2

performance ×2

r ×2

css ×1

file ×1

html ×1

java ×1

nonetype ×1

numpy ×1

overflow ×1

python-3.x ×1

ruby ×1

sapply ×1

scalar ×1

string ×1

vector ×1