0%

使用 Python re 模块运用正则表达式。

re.match 是从字符串的第一个字符开始比较,返回truefalse

1
2
3
4
5
6
import re
text = input('请输入你的邮箱:')
if re.match(r'[0-9a-zA-Z_]{1,19}@[0-9a-zA-Z]{1,13}\.[com,cn,net]{1,3}', text):
print('这是一个邮箱')
else:
print('这不是一个邮箱')

re.search 是查找这个字符中是否包含被查找的字符串,如果有,则输出这个字条串。

1
2
3
4
5
6
7
import re
text = input('请输入你的邮箱:')
email = re.search(r'[0-9a-zA-Z_]{1,19}@[0-9a-zA-Z]{1,13}\.[com,cn,net]{1,3}', text)
if email != None:
print(email.group())
else:
print('这不是一个邮箱')

当要复用某个正则表达式时,可以使用re.compile把这个正则保存下来。

1
2
3
4
5
6
import re
# 在[]集合模式中,^字符出现在第一个字符时,表示取反
pattern = re.compile(r'[a-zA-Z]*://[^\s]*')
string = '测试http://www.baidu.com 空白'
url = re.findall(pattern, string)
print(url)

之前也写过一些关于使用 Python matplotlib 画图的文章,写得都比较初级,内容繁多,有些可能根本就用不到。

根据工作中画图的经验,总结了一些最佳实践,主要涉及到一些设置方面的,商业逻辑不包含在内。此文章会一直更新。

设置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 导入画图工具
import matplotlib.pyplot as plt

# 让图表直接在juypter notebook中展示出来,高版本貌似已经不需要这条语句了
# %matplotlib inline

# 解决中文乱码问题,高版本貌似不需要这条语句了
# plt.rcParams['font.sans-serif'] = 'SimHei'

# 解决负号无法显示的问题
# plt.rcParams['axes.unicode_minus'] = False

# 设置图片格式为svg矢量图,更加清晰
%config InlineBackend.figure_format = 'svg'

画布

创建画布

创建一个画布,分为两行两列。

1
fig, axes = plt.subplots(2, 2)

展示画布的时候,只需要输出fig就行了,貌似也不需要设置%matplotlib inline

1
fig

删除子图

当某个子图不需要展现时,可以使用如下语句:

删除某子图

1
2
ax = axes[0, 1]
fig.delaxes(ax)

隐藏某子图

1
ax.set_axis_off()

不遮挡布局

设置了x轴标签后,可能被下方的子图遮挡,使用如下语句可以让遮挡部分显示出来。

1
fig.tight_layout()

画图

在第0行,第0列画图。

1
axes[0, 0].plot(x, y)

设置x, y轴标签

1
2
ax.set_xlabel('时间')
ax.set_ylabel('销量')

如果在好几年前买了mac电脑,现在想升级,所以需要查看一下电脑的硬件规格信息。

我的macOS是High Sierra。

可以直接通过如下路径查看:关于本机 -> 系统报告

或者访问苹果官网:https://support.apple.com/zh-cn/HT201300

最后附上SSD硬盘接口标准。

  1. MacBook Air (2013-2014): PCI-E 2.0 X2(1GB/s),不支持原生休眠
    MacBook Air 11” Mid 2013 (MacBookAir6,1)
    MacBook Air 13” Mid 2013 (MacBookAir6,2)
    MacBook Air 11” early 2014 (MacBookAir6,1)
    MacBook Air 13” early 2014 (MacBookAir6,2)

  2. MacBook Air (2015-2017):PCI-E 2.0 X4(2GB/s),支持原生休眠
    MacBook Air 13” early 2015 (MacBookAir7,1)
    MacBook Air 13” 2017 (MacBookAir7,2)

3.MacBook Pro (2013-2014):PCI-E 2.0 X4(2GB/s),不支持原生休眠
MacBook Pro Retina 13” late 2013 (MacBookPro11,1)
MacBook Pro Retina 15” late 2013 (MacBookPro11,2 & MacBookPro11,3)
MacBook Pro Retina 13” mid 2014 (MacBookPro11,1)
MacBook Pro Retina 15” mid 2014 (MacBookPro11,2 & 11,3)

4.MacBook Pro (2015):PCI-E 2.0或者3.0 X4,支持原生休眠
MacBook Pro Retina 13” early 2015 (MacBookPro12,1) ,为PCI-E 2.0规格,速度2GB/s
MacBook Pro Retina 15” mid 2015 (MacBookPro11,4-11,5),为PCI-E 3.0规格,速度3.94GB/s