- win10下,可以改动
os.environ
的数据,但系统的环境变量并不会发生改变,再次读取又变回来了 - 字符串替换
str.replace(old,new[,max])
max参数是替换最大次数
os.environ['Path'].replace('python 2.7','python 3.5')
从
os.environ['Path']
发现是先读系统变量在读用户变量,但是我实验后发现系统用的却优先是系统变量,查了一下:http://bbs.youkuaiyun.com/topics/300066844
用户下新建的path环境变量永远都是附加在系统环境变量之后的,path环境变量的使用是根据变量的顺序来找的,也就是说,系统path变量永远优先于用户path环境变量。关于
reduce()
函数,作用一句话说就是对第二个参数(sequence)内的元素从左到右两两使用第一个函数(函数)
#例1
>>> reduce(lambda x, y: x+y, [1, 2, 3, 4, 5])
15
#例2
>>> mySets = []
>>> for i in range(10):
mySets.append(set(range(i,i+5)))
>>> reduce(set.union,mySets)
set([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13])
- 书上写着
randrange([start],stop,[step])
不禁让我诧异是如何在start不输入的时候,传入stop参数的,翻看了一下源码
def randrange(self, start, stop=None, step=1, _int=int, _maxwidth=1L<<BPF):
istart = _int(start)
if istart != start:
raise ValueError, "non-integer arg 1 for randrange()"
if stop is None:
if istart > 0:
if istart >= _maxwidth:
return self._randbelow(istart)这里拿start调用了_randbelow函数
return _int(self.random() * istart)
raise ValueError, "empty range for randrange()"
#此函数后面省略
def _randbelow(self, n, _log=_log, _int=int, _maxwidth=1L<<BPF,
_Method=_MethodType, _BuiltinMethod=_BuiltinMethodType):
"""Return a random int in the range [0,n)
也就是说,并不是不传入start参数,而是把start当做stop参数使用,估计range()
也是一个道理
- 简单的循环要去想列表生成式
下面这中不要手动去构造list
(python代码像诗呀)
#我写的
deck = []
for i in range(1,11)+['J','Q','K']:
for j in range(1,5):
deck.append('%d of %s' % (j,i))
#书上的
values = range(1,11) + "Jack Queen King".split()
suits = "diamonds clubs hearts spades".split()
deck = ['%s of %s' % (v,s) for v in values for s in suits]
python中的re模块是正则匹配使用的,取名叫re的原因
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE)
https://baike.baidu.com/item/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F/1700215?fr=aladdinre.match()
匹配的是字符串开始的位置,如果要匹配整个字符串,可以在模式的结尾加上美元符- 假设需要匹配字符串
'python.org'
,那么需要用两个反斜杠对.
进行转义,因为为了让re模块获得到其所需的单个反斜线,需要通过两个级别的转义:1是通过解释器转义 2是通过re模块转义
用re.escape()
也能知道,这个函数对字符串中所有可能被解释为正则运算符的字符进行转义,(比如用户输入一段字符,你讲这段字符作为正则表达式的一部分时,就可以使用这个函数防止用户输入的字符串有歧义被解释错误)
>>> re.escape('python.org')
'python\\.org'
- win10 运行telnet命令显示是外部命令:
- win键+x,找到控制面板,打开
- 单击“启用或关闭windows功能”
- 找到Telnet客户端,前面打上勾,点击确定,等待安装一会
- 打开命令行 执行
telnet host port
- 使用
ssh -q -l 用户名 -p 22 IP地址
连接服务器
q:静音模式
l:login name
p:端口 - 在python的目录(如python 2.7/,也可以放在其他python能够找到的地方)下添加路径配置文件(以pth为后缀的文件,一行一个文件路径)来使python解释器在寻找模块的时候搜索文件里的路径。
如果我在配置文件中添加了一行 D:\WorkSpace\python\,
那么这个路径下的模块就可以被搜索到,
但是要注意 D:\WorkSpace\python\study 这个子目录下的模块并不会被找到