全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

Python中的魔法命令

发布时间:2023-07-21 17:06:14
发布人:xqq

当 Python 在 1991 年被引入时,人们普遍认为 Python 是“使用自担风险”的语言。但是情况变了;Python 是目前占主导地位的语言,它用于数据科学、机器学习和软件开发。

我们知道 Python 是一种灵活的语言。所以我们可以增加新的功能,比如魔法命令。

本教程将讨论魔法命令。这些神奇的命令肯定有助于减少头痛。

让我们了解一下最流行和最有趣的命令。

内置魔法命令

1.% auto all[模式]

%autocall[mode] 魔法函数用于使函数自动可调用,而无需使用括号。

2.%automagic

如果我们设置为 1,这个神奇的函数也可以被调用,而不需要初始化% 1。我们需要设置为 0 来停用它。

输出:


Automagic is OFF, % prefix IS needed for line magics.

3.%运行

假设我们有一个名为 program_test.py 的文件,其代码如下。


def name()
    print("Hello I am Stuart?)
name()

我们使用以下语句来运行。


%run program_test.py

该脚本将在不导入已定义变量的情况下运行。

上述命令的行为将与 python program_script.py 文件相同。

注意-我们可以使用%run -i 提供对已经定义的变量的访问

现在我们可以在 IPython shell 中访问执行文件的所有变量。

4.%cd

这个神奇的命令改变了当前目录。它自动管理我们在 IPython 会话期间访问的内部目录列表。

输出:


C:\Users\DEVANSH SHARMA

用法-

    %cd

    -将当前工作目录更改为

    %cd..-它将当前目录更改为父目录。

    %cd -它更改为上次访问的目录。

5.% d 列表

这是一个非常有用的魔法命令;它会打印我们在当前会话中访问过的所有目录。每次执行%cd 命令,都会在 _dh 变量中更新。

输出:


Directory history (kept in _dh)
0: C:\Users\DEVANSH SHARMA

6.%编辑

编辑魔法命令解锁当前操作系统的默认文本编辑器(窗口记事本),用于编辑 Python 脚本。我们可以在编辑器中编辑当前的 Python 脚本。

输出:


IPython will make a temporary file named: C:\Users\DEVANS~1\AppData\Local\Temp\ipython_edit_z41uo6o8\ipython_edit_zwb99en9.py

7.% env[guin name]

这个神奇的命令用于启用和禁用 IPython GUI 事件循环集成。当我们使用 GUINAME 参数时,这个命令将默认的图形用户界面工具包替换为指定的工具包。

8.%%timeit

上面的命令计算了 IPython 环境执行 Python 程序所花费的时间。让我们理解下面的程序。


%%timeit
square_numbers = [num**2 for num in range(1,1000)]

输出:

659 µs ± 19.8 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)

9.%lsmagic

这个命令将返回所有魔法命令的列表。让我们看看下面的例子。


%lsmagic

输出:

10.%谁

上述命令将返回当前笔记本中定义的所有变量的列表。

输出:


a    b   c   name    z  

11.%pinfo

它返回关于变量的详细信息。我们可以检查存储在特定变量名中的对象。让我们理解下面的例子。

命令-


%pinfo a 

输出:

Type:        int
String form: 10
Docstring:  
int([x]) -> integer
int(x, base=10) -> integer

Convert a number or string to an integer, or return 0 if no arguments
are given.  If x is a number, return x.__int__().  For floating point
numbers, this truncates towards zero.

If x is not a number or if base is given, then x must be a string,
bytes, or bytearray instance representing an integer literal in the
given base.  The literal can be preceded by '+' or '-' and be surrounded
by whitespace.  The base defaults to 10\.  Valid bases are 0 and 2-36.
Base 0 means to interpret the base from the string as an integer literal.
>>> int('0b100', base=0)
4

13.%matplotlib inline

用于显示 Jupyter 笔记本中的 matplotlib 图形。然而,这个命令在旧版的 Jupyter 笔记本中是可用的。在较新的版本中,这不再使用。

14.%hist

此命令返回当前笔记本的历史记录。意思是,我们在当前笔记本上已经做了什么。

输出-


%dhist
%edit
%env[GUINAME]
%automagic
def name()
    print('Hello I am Stuart')
name()
def name():
    print('Hello I am Stuart')
name()
%cd
%%timeit
square_number = []
for num in range(1,100):
    sqaure_number.append(num**2)
%%timeit
square_numbers = []
for num in range(1,100):
    sqaure_numbers.append(num**2)
%%timeit
square_numbers = [num**2 for num in range(1,1000)]
%%html


Student Marks

.......................................... .......................................... ..........................................

在 IPython 中执行 Html 脚本

我们可以使用神奇的命令来执行 HTML 和 JavaScript 代码。它帮助我们为代码提供一些简单的用户界面元素。

语法-

%%html 允许我们执行 html 脚本。

%%js 允许我们执行 js 脚本。

让我们看看下面的例子。

命令


%%html


Employee Details

Name Roll Age Marks
Name Designation Age Salary
Peter HR 29 93000
Parker IT 24 92000
Adam IT 26 120000

使用环境变量

    %env

这个命令让我们可以访问和处理系统环境变量。

输出:

{'ALLUSERSPROFILE': 'C:\\ProgramData',
 'APPDATA': 'C:\\Users\\DEVANSH SHARMA\\AppData\\Roaming',
 'C:\\PROGRAMDATA\\ANACONDA3\\SCRIPTS\\': 'C:\\ProgramData\\Anaconda3',
 'C:\\USERS\\DEVANSH SHARMA\\APPDATA\\ROAMING\\NPM': 'C:\\Users\\DEVANSH SHARMA\\AppData\\Roaming\\npm',
 'COMMONPROGRAMFILES': 'C:\\Program Files\\Common Files',
 'COMMONPROGRAMFILES(X86)': 'C:\\Program Files (x86)\\Common Files',
 'COMMONPROGRAMW6432': 'C:\\Program Files\\Common Files',
 'COMPUTERNAME': 'DESKTOP-2VAN176',
 'COMSPEC': 'C:\\WINDOWS\\system32\\cmd.exe',
 'DART_SDK': 'C:\\Program Files\\Dart\\dart-sdk',
 'DRIVERDATA': 'C:\\Windows\\System32\\Drivers\\DriverData',
 'FPS_BROWSER_APP_PROFILE_STRING': 'Internet Explorer',
 'FPS_BROWSER_USER_PROFILE_STRING': 'Default',
 'HOMEDRIVE': 'C:',
 'HOMEPATH': '\\Users\\DEVANSH SHARMA',
 'LOCALAPPDATA': 'C:\\Users\\DEVANSH SHARMA\\AppData\\Local',
 'LOGONSERVER': '\\\\DESKTOP-2VAN176',
 'NUMBER_OF_PROCESSORS': '4',
 'ONEDRIVE': 'C:\\Users\\DEVANSH SHARMA\\OneDrive',
 'OS': 'Windows_NT',
 'PATH': 'C:\\Users\\DEVANSH SHARMA\\Anaconda3;C:\\Users\\DEVANSH SHARMA\\Anaconda3\\Library\\mingw-w64\\bin;C:\\Users\\DEVANSH SHARMA\\Anaconda3\\Library\\usr\\bin;C:\\Users\\DEVANSH SHARMA\\Anaconda3\\Library\\bin;C:\\Users\\DEVANSH SHARMA..............

    %env var - 它返回特定变量的值。例如- %env OS

输出:


'Windows_NT'

    %env var 值- 用于设置变量 var 的值。

结论

在本教程中,我们已经介绍了 Jupyter 笔记本的重要魔法命令。这些命令使工作更容易,也提供了有效使用笔记本电脑的灵活性。

#python教程

相关文章

为什么Hadoop是用Java实现的?

为什么Hadoop是用Java实现的?

2023-10-15
Java8引入Lambda表达式的利弊是什么?

Java8引入Lambda表达式的利弊是什么?

2023-10-15
同步请求和异步请求的区别是什么?

同步请求和异步请求的区别是什么?

2023-10-15
云平台是什么?

云平台是什么?

2023-10-15

最新文章

常见网络安全面试题:Windows常用的命令有哪些?

常见网络安全面试题:Windows常用的命令有哪些?

2023-10-09
常见网络安全面试题:根据设备告警如何展开排查?

常见网络安全面试题:根据设备告警如何展开排查?

2023-10-09
常见网络安全面试题:mysql加固呢?(数据库加固)

常见网络安全面试题:mysql加固呢?(数据库加固)

2023-10-09
常见网络安全面试题:windows和linux加固?(操作系统加固)

常见网络安全面试题:windows和linux加固?(操作系统加固)

2023-10-09
在线咨询 免费试学 教程领取