0%

python中,yaml.dump可添加参数sort_keys=False, 使得输出的结果不对键值进行排序。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import yaml

data = {'b':1,'a':2,'c':3}


# default output:(Alphabetical order)
# a: 2
# b: 1
# c: 3
print(yaml.dump(data))

# sort_keys=False, output:
# b: 1
# a: 2
# c: 3
print(yaml.dump(data,sort_keys=False))

pandas.DataFrame 中的 apply 方法可以用于生成新的数据。

基础方法(1对1,N对1)

1列输入-1列输出 最简单:

1
2
3
4
5
def foo(x):
y = x + 1
return y

df['new_column'] = df['column_1'].apply(foo)

N列输入-1列输出:

1
2
3
4
5
6
7
8
def foo_multiple_input(x):
if x['column_1'] > 0:
y = x['column_2'] + x['column_3']
else:
y = x['column_4'] * x['column_5']
return y

df['new_column'] = df.apply(foo_multiple_input,axis=1)

复杂场景(1对N)

1列输入-N列输出,N对N的处理方法类似:

阅读全文 »

从网上下载的MP3,有时候会带有很多杂乱的信息。

可以通过Python进行批量的增加、修改、删除。

参考 StackOverflow: accessing-mp3-meta-data-with-python

有以下几种metadata相关工具:

  • mutagen:资料相对较多,功能强大,使用简单。Github相对活跃。
  • eyed3: 资料相对较多,windows下安装有依赖库
  • mp3-tagger: 安装简单,实际使用时,清理未生效

推荐使用 mutagen

阅读全文 »

在国内访问Github网站,特别是git clone时,非常慢。

如果有梯子,会好一些。

这里介绍一个不需要梯子的办法: 通过修改本地 hosts 文件,达到加速的目的。

实测,可以明显提升下载速度(单位网络限速 10 Mbps,git clone 能满速 900KB/s 以上)。

阅读全文 »

Linux 下的很多工具用起来很方便,比如 cat、grep、awk、sed、which 等等。

其中 which 可以用来查找当前环境中的某个程序的具体路径在哪里。

Windows 下安装过 Git for Windows 后,也可以使用这些常用的linux命令。

其实,还有另外一种方法,可以使用 PowershellGet-Command指令。

例如:

1
2
3
4
5
6
7
8
9
10
PS C:\Users\liangxinhui\Desktop> Get-Command ssh

CommandType Name Version Source
----------- ---- ------- ------
Application ssh.exe 0.0.0.0 C:\Program Files\Git\usr\bin\ssh.exe


PS C:\Users\liangxinhui\Desktop> which ssh
/usr/bin/ssh