关于pyhton的yield, 生成器与尾调用

前言

什么时候可以认真看过一遍SICP啊 (:3」∠)

以下单纯的作为学习笔记

迭代器

好像没什么徒手撸一个迭代器的机会所以留意一下Python的for循环本质上就是通过不断调用next()函数实现。next()方法返回容器的下一个元素,在结尾时引发StopIteration异常

1
2
3
4
5
6
7
8
9
10
# 首先获得Iterator对象:
it = iter([1, 2, 3, 4, 5])
# 循环:
while True:
try:
# 获得下一个值:
print(next(it))
except StopIteration:
# 遇到StopIteration就退出循环
break

关于127.0.1.1以及是否应该使用/etc/hosts

这种东西都写出来感觉自己是不是太无所事事了orz

起因

一开始只是疑惑为什么debian/ubuntu里面的/etc/hosts有第二行127.0.1.1 <host_name>,查下来才知道127/8的地址都是环路地址,127.0.1.1只是为了确保访问自己的hostname的时候 总是访问的是本机地址。

只是看到一句话比较在意

In the long run the UNIX hostname should not be put in /etc/hosts at all.

是不是说所有的hostname应该交给上级DNS解析(/etc/resolv.conf中指定),而不用自己定义/etc/hosts的意思?

[转载]windows下建立.开头的文件

转载自 https://www.zendstudio.net/archives/create-htaccess-file-in-windows/

  1. 使用屏幕编辑命令copy con .htaccess后回车,输入内容,最后按下ctrl+z结束编辑,就成功生成了.htaccess;
  2. 使用重命名命令ren 1.txt .htaccess,这是最常规的方法了,在windows窗口下不能执行的命令,在cmd下却如履平地;
  3. 使用重定向命令echo. >.htaccess,这里将一个回车符输入到.htaccess,同样能创建成功;
  4. 直接通过文本编辑工具保存 另存为的时候 保存类型所有文件,文件名就是.开头的文件。

感觉2,3比较常用,4太慢了,别的应该也没更快的方法了。

[更新][转载][整理]解决SSH退出登陆后保持进程继续在后台运行

zjking的几个思考写的很好啊忍不住想记下来,侵删

问题描述:

远程ssh用tar打包一个文件夹或者unrar解压一个大文件,即使加了&,退出ssh登录时解压进程中断。

ps:直接exit的话会提示zsh: you have running jobs.,强行退出会有zsh: warning: 1 jobs SIGHUPed提示。