我写了一个函数来从列表中删除奇数,就像这样:
def remove_odd(l):
for i in l:
if i % 2 != 0:
l.remove(i)
print l
return l
remove_odd([4,5,4])
remove_odd([4,5,4,7,9,11])
remove_odd([4,5,4,7,9,11,12,13])
Run Code Online (Sandbox Code Playgroud)
它返回:
[4, 4]
[4, 4, 9]
[4, 4, 9, 12]
Run Code Online (Sandbox Code Playgroud)
- >错了
但当我改为删除偶数时:
def remove_even(l):
for i in l:
if i % 2 == 0:
l.remove(i)
print l
return l
remove_even([4,5,4])
remove_even([4,5,4,7,9,11])
remove_even([4,5,4,7,9,11,12,13])
Run Code Online (Sandbox Code Playgroud)
答案还可以:
[5]
[5, 7, 9, 11]
[5, 7, 9, 11, 13]
Run Code Online (Sandbox Code Playgroud)
remove_odd()函数有什么问题?我知道人们通常会在func中创建第二个列表,然后将偶数附加到该列表中,但是我们可以用list.remove()解决这个练习吗?
谢谢!
我有一套Ansible剧本,主要的yml文件是这样的
- hosts: all
roles:
- common
- install_nginx
Run Code Online (Sandbox Code Playgroud)
我想在触发剧本时添加确认消息.我试过这个并没有用
- hosts: all
vars_prompt:
- name: CONFIRM
prompt: Just to confirm you will install stuff
tasks:
- fail: no deployment this time
when: CONFIRM != 'yes'
roles:
- common
- install_nginx
Run Code Online (Sandbox Code Playgroud)
如何vars_prompt在没有修改的情况下使用role?
我正在使用nginx version: nginx/1.10.1并代理 Rails 应用程序。我需要接受一个很长的 URL,然后用以下命令更新它
client_header_buffer_size 512k;
large_client_header_buffers 4 512k;
Run Code Online (Sandbox Code Playgroud)
但这仅适用于 URL 长度约为 8,000 个字符的情况。超过这个数量的 URL 将不起作用。
我尝试将这些标头设置放入http {}并server {}阻止,但不起作用。
我错过了什么吗?它应该根据Nginx的文档工作http://nginx.org/en/docs/http/ngx_http_core_module.html#client_header_buffer_size
我正在使用带有Github Pull Request Builder插件的Jenkins
https://wiki.jenkins.io/display/JENKINS/GitHub+pull+request+builder+plugin
在PR打开或更新时触发构建是可以的,但是我需要一种在PR关闭或合并时触发构建的方法。
我使用Terraform启动一堆服务器,因此在PR关闭/合并后,我需要事件或条件来终止堆栈。
似乎大多数插件只能由Github PR上的open / update事件触发。
任何的想法?
谢谢!
我正在尝试为我的nodejs app设置一个upstart conf.我必须运行2个脚本scrip_1.js和script_2.js.这里的conf
start on startup
stop on shutdown
respawn
console log
env PROJ=/project/path
script
cd $PROJ
exec node script_1.js 2>&1 >> $PROJ/logs/script_1.log
exec node script_2.js 2>&1 >> $PROJ/logs/script_2.log
end script
Run Code Online (Sandbox Code Playgroud)
问题只是在script_1.js运行.如果我在此exec node script_2.js...之前向右移动cd $PROJ只script_2.js运行.
我怎样才能让这个新贵呢?
谢谢!