Blog

Python使用metaclass不允许类方法同名

我这里大部分代码出自The Python Master一书 在python的class里面,允许同名的方法存在。但是后定义的方法会覆盖掉先定义的方法. 例如 class Dod1: def method1(self): return "first definition" '''The second definition takes precedence because it overwrites the first entry in the namespace dictionary as the class definition is processed ''' de...

Read more

Python使用map来模拟switch

使用python中的字典来模拟其他语言中的case,switch 语句 使用函数作为字典的value. 看代码很直观 该代码出自The Python Master一书 def labyrinth(position, alive): print('You are in a maze of twisty passages, all alike.') return position, alive def dark_forest_road(position, alive): print("You are on a road in a dark forest. To" " The north you can see a tower.") return ...

Read more

Np和pd中std函数默认参数不同引发的有趣现象

在看numpy和pandas的时候,发现了一个有趣的现象。由于std函数的默认参数不同所以求出来的standard deviation 是不同的。 看代码 In [1]: import numpy as np In [2]: import pandas as pd In [3]: df5=pd.DataFrame(np.arange(9).reshape(3,3), columns=['a','b','c']) In [4]: df5 Out[4]: a b c 0 0 1 2 1 3 4 5 2 6 7 8 In [5]: df5.apply(np.std, axi...

Read more

Shell里面打印utf 8字符

有一天突发奇想,怎么在shell里面打印utf-8字符呢?搜索下了发现不少办法。 使用echo 和printf 例如打印欧元符号,首先通过网页 https://www.w3schools.com/charsets/ref_utf_currency.asp 可以查到欧元的dec是8364, hex是20ac. root@kali:/usr/local/src/py/project_dirs# printf '\U20AC\n' € root@kali:/usr/local/src/py/project_dirs# printf '\u20ac\n' € root@kali:/usr/local/src/py/project_dirs# echo -e...

Read more

推荐一个文件转换网站

推荐一个文件转换网站 https://file-converter-online.com/ 我成功的将一个30M的azw3的文件转换成pdf格式。 而下面这个网站直接提示我的文件有问题, https://onlineconvertfree.com/convert-format/azw3-to-pdf/ File is too big or has unsupported file format。

Read more

最近看了些node.js

技术更迭的太快,Node.js 和Go 一直想抽时间看看,最近看了些Node,得到的感想是各种语言都在努力构建 自己的生态圈,想要一种语言吃遍天下。Javascript 这东西争议可能会比较大。 anyway ,记录下敲下来的命令。代码主要来自我看的书 First Week with Node.js node > function add(a, b, callback) {var result=a + b; callback(result); } undefined > add(2,3, function (c) { console.log('2 + 3 = ' +c)}); 2 + 3 = 5 undefined > add(1, 1, function(c) ...

Read more

Python_data_science_第11课

K-means clustering K-Means clustering is unsupervised learning. means split data into K groups, algorithm for k-means clustering: Randomly pick K centroids(k-means) Assign each data point to the centroid it is closest to. Recompute the centroids based on the average position of each centroid’s points. Iterate unt...

Read more

最近kali_linux上碰到的问题和解决方案

apt-get update 一直在报错,改用中科大源以后恢复正常。 E: Failed to fetch http://mirrors.neusoft.edu.cn/kali/dists/kali-rolling/main/Contents-amd64.gz File has unexpected size (36101836 != 36098798). Mirror sync in progress? [IP: 219.216.128.25 80] Hashes of expected file: + Filesize:36098798 [weak] + SHA256:770615b7786413d184dc2bdacbdb1b7195cc1...

Read more