Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python读取脚本是否与其他语言不同?_Python - Fatal编程技术网

python读取脚本是否与其他语言不同?

python读取脚本是否与其他语言不同?,python,Python,目前我正在学习Python(不是编程),我正在尝试用这种语言解决我的第一个问题 首先,我检查了import X和from X import Y之间的区别。我知道第一次加载到名称空间中的是包,而不是这个包的方法,因此您需要编写X.Y,另一方面,第二次导入方式将函数和对包的引用加载到名称空间中。尽管如此,我不明白为什么导入数学.sqrt失败。我得到这个错误:数学不是一个包 有人知道会发生什么吗 然后我试着写下这句话: sum([ pow(dic1[elem]–dic2[elem], 2)

目前我正在学习Python(不是编程),我正在尝试用这种语言解决我的第一个问题

首先,我检查了
import X
from X import Y
之间的区别。我知道第一次加载到名称空间中的是包,而不是这个包的方法,因此您需要编写X.Y,另一方面,第二次导入方式将函数和对包的引用加载到名称空间中。尽管如此,我不明白为什么导入数学.sqrt失败。我得到这个错误:
数学不是一个包

有人知道会发生什么吗

然后我试着写下这句话:

sum([
     pow(dic1[elem]–dic2[elem], 2)
     for elem in dic1 if elem in dic2 
    ])
正如我之前所说的,我知道编程,也知道它在做什么,但这对我来说似乎有点不合逻辑,因为python读取脚本的方向似乎与“典型”语言不同

如果我没有错的话,这个语句将两个字典(2)中元素之间的所有差异相加,但只有当它执行for语句时才进行相加,条件是dic2中存在元素

这是正确的吗


谢谢大家!

对于第一个问题,请尝试:

from math import sqrt
关于你的第二个问题,是的,如果你来自其他语言,python看起来确实以一种奇怪的顺序做事情。例如:

x=1 if a=2 else 0
这等于说:

if a=2:
    x=1
else:
    x=0
如果你这样做:

x=[i*2 for i in [1,2,3,4]]
这意味着为列表[1,2,3,4]中的每个元素创建一个变量i,将其乘以2,并从结果中创建一个新列表。因此,在上述示例中,x将是:

[2,4,6,8]

基本上,你会习惯的。

见。如果你一次只问一个问题,我们可能已经把它当作一个重复了;数学。__文件_vs.
导入xml;xml.\uuuu文件\uuuu
<代码>数学是用C语言实现的,而不是Python语言,因此可能会有不同的导入行为。谢谢您的回答。第一个是可行的,但我想了解import math失败的原因。你的第二个答案很完美!非常感谢。