整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

Win10系统开启壁纸自动换的方法

Win10系统开启壁纸自动换的方法

T之家讯Win10预览版10074等版本的Modern主题已经更加完善,很多设置项都已经逐渐完成Modern化。因此,很多老用户都需要重新熟悉一些相关设置项目,其中“个性化”算是我们使用频率较高的选项。

目前在桌面单击右键选择“个性化”之后,直接打开的是Modern个性化选项。新的UI设计与之前不同,想要实现壁纸自动换需要在“背景”下拉菜单处选择“Slide show”,然后就可以看到壁纸更换文件夹位置选择项,以及图片更换频率等。

另外,原有个性化窗口虽然能够进入,但其设置功能仅剩下主题选择,其他选项例如背景、声音、屏幕保护、桌面图标、鼠标指针等各种功能均已移除。

不过,用户想使用这些功能也并不难,新版Modern个性化中也有这些设置项,只不过这些设置目前并不完善,还需要转到传统控制面板项进行设置。需要说明的是,屏幕保护已经不再提供,这项传统功能可以说已经没有继续存在的必要了。

码:

<html>

<head>

<title>slide show</title>

<script type="text/javascript">

var i=0;

var timeout;

function preLoadImages(){

if(document.images){

planet=new Array();

planet[0]=new Image();

planet[0]="太阳.jpg";

planet[1]=new Image();

planet[1]="水星.jpg";

planet[2]=new Image();

planet[2]="金星.jpg";

planet[3]=new Image();

planet[3]="地球.jpg";

planet[4]=new Image();

planet[4]="火星.jpg";

}

else{

alert("There are no images to preload");

}

}

function startSlideShow(){

if(i<planet.length){

document.images["planet_pic"].src=planet[i];

i++;

}

else{

i=0;

document.images["planet_pic"].src=planet[i];

}

timeout=setTimeout('startSlideShow()', 1500);

}

function stopSlideShow(){

clearTimeout(timeout);

}

</script>

</head>

<body bgcolor="black" onload="preLoadImages(), startSlideShow()">

<img name="planet_pic" src="太阳.jpg" height="85%" />

<form>

<br />

<input type="button" value="Start show" onClick="return startSlideShow();" />

<input type="button" value="Stop show" onClick="return stopSlideShow();" />

</form>

</body>

</html>

代码说明:

setTimeout(someFunction,1500),可以在设定的时间间隔(1500毫秒)反复执行一段代码someFunction。setInterval()类似。

setTimeout('startSlideShow()', 1500),定时器设置为每隔1.5秒显示一幅新图片。

-End-

作 Parul Pandey

郭一璞 编译

量子位 出品 | 公众号 QbitAI

作为一个超好用的交互式笔记本,Jupyter总是深受开发者的喜爱。

不过,除了基础的写文档之外,其实Jupyter还有N多功能,简直是一个集视频、图片、PPT、多种交互于一身的万花筒。

如果不会用,你可能错过了Jupyter 99%的功能。

Medium上走向数据科学(Towards Data Science)专栏的作者Parul Pandey就总结了七大Jupyter的进阶用法,量子位编译如下~

执行shell命令

Shell是一种与计算机进行文本交互的方式。

一般来讲,当你正在使用Python编译器,需要用到命令行工具的时候,要在shell和IDLE之间进行切换。

但是,如果你用的是Jupyter,就完全不用这么麻烦了,你可以直接在命令之前放一个“!”,就能执行shell命令,完全不用切换来切换去,就能在IPython里执行任何命令行。

1In [1]: !ls

2example.jpeg list tmp

3In [2]: !pwd

4/home/Parul/Desktop/Hello World Folder'

5In [3]: !echo "Hello World"

6Hello World

7

我们甚至可以将值传递给shell,像下面这样:

1In [4]: files=!ls

2In [5]: print(files)

3['example.jpeg', 'list', 'tmp']

4In [6]: directory=!pwd

5In [7]: print(directory)

6['/Users/Parul/Desktop/Hello World Folder']

7In [8]: type(directory)

8IPython.utils.text.SList

注意,返回结果的数据类型不是列表。

给Jupyter换主题

使用Jupyter主题,不仅能让你的Jupyter界面更好看、更舒服,还能让屏幕上的代码看起来更显眼。

比如Chesterish主题:

solarizedl主题:

来看一下具体的操作方法:

第一步,安装:

1pip install jupyterthemes

第二步,加载可用主题列表:

1jt -l

第三步,选择你想要的主题:

1# selecting a particular theme

2jt -t <name of the theme>

3# reverting to original Theme

4jt -r

现在可用的主题有:

chesterish

grade3

gruvboxd

gruvboxl monokai

oceans16

onedork

solarizedd

solarizedl

把名字填进去就好啦。

不过,每次换主题的时候都要重新加载Jupyter,才能看到主题变化。

另外我们上面讲的在命令之前加“!”也一样可用。

笔记本扩展

笔记本扩展(nbextensions)是一种JavaScript模块,可以加载到笔记本前端页面上,可以大大提升用户体验。

比如下面这些扩展工具,简直能让效率提升10000倍。

Hinterland

Hinterland功能可以让你每敲完一个键,就出现下拉菜单,可以直接选中你需要的词汇。

Snippets

Snippets在工具栏里加了一个下拉菜单,可以非常方便的直接插入代码段,完全不用手动敲。

拆分单元格

拆分笔记本中的单元格,改成相邻的模式,看起来就像分了两栏。

目录

这个功能可以自动找到所有的标题,生成目录。

并且这个目录还是移动的呦,你可以放在侧边栏,也可以拖动到任何你喜欢的地方悬浮起来。

折叠一个标题下的全部内容

如果你的代码太长,觉得滚动过去太麻烦,可以直接折叠掉。

Autopep8

一键美化代码,强迫症的福音。

安装方法

最后看一下怎么装,需要用到conda:

1conda install -c conda-forge jupyter_nbextensions_configurator

或者用pip:

1pip install jupyter_contrib_nbextensions && jupyter contrib nbextension install

2#incase you get permission errors on MacOS,

3pip install jupyter_contrib_nbextensions && jupyter contrib nbextension install --user

然后把Jupyter打开,你就可以看到NBextensions这个选项卡了。

找不到的话就去菜单的Edit里面找。

搞定。

Jupyter小工具

还有一些Jupyter小工具,比如滑块、文本框之类的部分,可以做一些方便的交互。

滑块

1def f(x):

2 return x

3# Generate a slider 

4interact(f, x=10,);

布尔值生成复选框

1# Booleans generate check-boxes

2interact(f, x=True);

字符串生成文本区域

1# Strings generate text areas

2interact(f, x='Hi there!');

播放器

 1play=widgets.Play(

 2 # interval=10,

 3 value=50,

 4 min=0,

 5 max=100,

 6 step=1,

 7 description="Press play",

 8 disabled=False

 9)

10slider=widgets.IntSlider()

11widgets.jslink((play, 'value'), (slider, 'value'))

12widgets.HBox([play, slider])

日历

1widgets.DatePicker(

2 description='Pick a Date',

3 disabled=False

4)

不过这个部件只能咋Chrome和Edge里用,Firefox和Safari不支持。

调色盘

1widgets.ColorPicker(

2 concise=False,

3 description='Pick a color',

4 value='blue',

5 disabled=False

6)

标签

1tab_contents=['P0', 'P1', 'P2', 'P3', 'P4']

2children=[widgets.Text(description=name) for name in tab_contents]

3tab=widgets.Tab()

4tab.children=children

5for i in range(len(children)):

6 tab.set_title(i, str(i))

7tab

其他的小部件,可以在文末的传送门跳转到GitHub寻找。

安装方法

1# pip

2pip install ipywidgets

3jupyter nbextension enable --py widgetsnbextension

4# Conda

5conda install -c conda-forge ipywidgets

6#Installing ipywidgets with conda automatically enables the extension

使用“interact”功能自动创建UI控件,这是使用IPython最方便的方法。

1# Start with some imports!

2from ipywidgets import interact

3import ipywidgets as widgets

Qgrid

Qgrid也是一个Jupyter的小部件,不过它主要用于数据帧,装上之后,就可以像操作Excel里的筛选功能一样,方便的处理数据。

安装方法

用pip安装:

1pip install qgrid

2jupyter nbextension enable --py --sys-prefix qgrid

3# only required if you have not enabled the ipywidgets nbextension yet

4jupyter nbextension enable --py --sys-prefix widgetsnbextension

用conda安装:

1# only required if you have not added conda-forge to your channels yet

2conda config --add channels conda-forge

3conda install qgrid

放PPT

人在江湖飘,难免遇到要做PPT的时候。

但是,如果你的内容都已经放在Jupyter里了,再重新导入PPT,太麻烦了,我们自动转换吧。

一种方法是用Jupyter内置的PPT选项,依次点击菜单栏里的View → Cell Toolbar → Slideshow,之后每个单元格上面都会有一个灰色的横条,选Sub-Slide

然后输入以下代码:

1jupyter nbconvert *.ipynb --to slides --post serve

2# insert your notebook name instead of *.ipynb

好了,现在就变成PPT样式的了,显示在端口8000,你也可以查看源代码找到PPT文件。

你也可以提前换好主题,比如onedork主题,然后再转换成PPT的的时候就是同一个主题风格的PPT了。

不过,用PyTorch默认方法生成的PPT代码不能编辑,这个时候就要用到RISE插件了。

RISE用到reveal.js来运行PPT,可以不退出PPT,直接运行代码。

先来安装RISE,推荐用conda:

1conda install -c damianavila82 rise

其实不太推荐pip:

1pip install RISE

然后调用JS和CSS:

1jupyter-nbextension install rise --py --sys-prefix

2#enable the nbextension:

3jupyter-nbextension enable rise --py --sys-prefix

安装好啦,现在重新打开你的Jupyter Notebook,发现一个新的扩展,名叫“Enter/Exit RISE Slideshow”。

戳一下,一个可以边演示边改的PPT就好了。

嵌入链接和pdf

扔链接再跳转实在是太麻烦了,不如直接把素材放进Jupyter里面。

嵌入链接

1#Note that http urls will not be displayed. Only https are allowed inside the Iframe

2from IPython.display import IFrame

3IFrame('https://en.wikipedia.org/wiki/HTTPS', width=800, height=450)

操作方式如下,当然你需要把链接换成你要放的链接:

嵌入pdf

1from IPython.display import IFrame

2IFrame('https://arxiv.org/pdf/1406.2661.pdf', width=800, height=450)

同样,把pdf链接换成你需要用的pdf。

传送门

原文:Bringing the best out of Jupyter Notebooks for Data Science

Parul Pandey, Towards Data Science

https://towardsdatascience.com/bringing-the-best-out-of-jupyter-notebooks-for-data-science-f0871519ca29

Jupyter主题

https://github.com/dunovank/jupyter-themes

IPython小部件

https://github.com/jupyter-widgets/ipywidgets

诚挚招聘

量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。

量子位 QbitAI · 头条号签约作者

?'?' ? 追踪AI技术和产品新动态