本文实例总结了python调用函数、类和文件操作。分享给大家供大家参考,具体如下:
调用函数有三种方式
一,导入整个模块(所有函数)
导入 import module_name
调用 module_name.function_name()
在这种情况中,不会出现下面两种方式的缺点,即具有相同函数名的问题,因为一个文件中不存在两个相同的文件名。但缺点是能不清晰显示出使用到的函数,调用的时候也需要重复写模块名。
二,导入模块中单个或多个函数
导入 from module_name import function_name1(,function_name2...)
调用function_name()
#在这种情况中,虽然能清楚的表示出使用到的函数,如果是多个不同的模块,但其中的函数名有重叠时,后导入的模块函数为能使用的函数,即产生覆盖函数。
三,导入模块中所有的函数
导入 from module_name import *
调用 function_name()
#这种方法不推荐使用,因为它集合了前两种方式的缺点,即导入不清晰,调用全部函数会更容易造成覆盖函数。
导入类
一,导入整个模块(所有类)
导入 import module_name
调用类的属性和方法:创造实例
X = module_name.class_name( ,)
X.属性
X.方法()
虽然开头没有列出用到的所有类,但你清楚地知道在程序的哪些地方使用了导入的模块,还避免了导入模块中的每个类可能引发的名称冲突。
二,导入单个或多个类
导入 from module_name import class_name1(,class_name2 ...)
调用类的属性和方法: 创造实例
X = class_name( ,)
X.属性
X.方法()
清楚地列出用到的类,但可能会造成名称的冲突
三,导入模块中所有的类
导入 from module_name import *
调用类的属性和方法: 创造实例
X = class_name( ,)
X.属性
X.方法()
不推荐使用,即没有列出使用到的类,又有可能造成名称冲突。
总结:二、三方法:假如类名相同,将会产生覆盖类,即后输入的类有效,即使前面的类中的属性和方法比覆盖类多,也将无效。简而言之,产生覆盖后,前面的类将全部无效。
文件
读取文件
#以下file_object为一个变量,可以随意设置名称。 with open('(文件路径)file_name') as file_object: x = file_object.read()
或 for line in file_object:
或 lines = file_object.readlines()
for循环遍历文件中每一行
方法readlines从文件中读取每一行,并将其存储在一个列表中
写入文件(如果没有文件则自动新建一个)
with open('(文件路径)file_name','w') as file_object: file_object.write('数据')
附加模式
with open('(文件路径)file_name','a') as file_object: file_object.write('数据')
存储数据(写入后可以立即调用)
json.dump()和json.load()的使用示例:
import json numbers = [2,3,4,5,6,8] filename = 'numbers.json'(文件名) with open(filename,'w') as f_obj: json.dump(numbers,f_obj)
import json filename = 'numbers.json' with open(filename,'w') as f_obj: numbers = json.load(f_obj) print(numbers)
关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。