python的经验主义学习之路(一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013555238/article/details/75452439

2017_7_19

学习总结

1:用python 的命令行交互系统中运行python,我可以在任意dos中任意目录下输入 python、启动python的解释器,若不导入任何的模块则敲入任意的python代码,python解释器就能一行一行的执行我的代码。而这个启动python的目录就是python解释器的当前工作目录不知道对不对,目前对比vs得出的结论),而当前工作目录就是默认的读取目录,所以当我们需要import一个模块时,我们必须将python的启动目录(当前工作目录)设置为模块的目录,这样才能正确的读取(找到模块,否则会提示找不到)

2:python 是解释性的语言----从上到下一句一句的翻译成机器代码并执行,所以import 和c++中的#include有本质的区别吗,#include是单纯的贴在相应的位置(不一定先执行,定从main 开始执行),而import是把模块module(一个.py)中的内容直接从上到下先执行一遍。如下代码:

absTest.py

def abd(x):
	if x>=0:
		return x
	else:
		return -x


a = 5
print('这是第一个test的a=5')
b = 6
print('这是第一TEst的b=6')




def abd(x):
	print('这是第三个abd')

def abd(x,y):
	print('这是第三个abd,函数的签名不同')

可以看到最终的效果,打印出了非函数定义的内容。


运行


我们可以看到若直接调用abd函数,则会出现错误,abd没有被定义,在import一个模块(包目前没有测试),不可直接调用,必须写模块名+.。

函数重名问题,好像并没有C++中的根据函数签名重载的问题,目前经验主义理解如下:

函数名是一个变量,和c++常量不同,这个变量可以指向了内存中不同的函数体。所以只有最后一个定义的函数有效。

3:模块中的 变量,和函数需要 用吗,模块名+.访问,同名的函数和变量并不冲突。需加上模块名区别。


import时,只运行第一次的import。



















猜你喜欢

转载自blog.csdn.net/u013555238/article/details/75452439
今日推荐