Python教程

python文件读写、函数

本文主要是介绍python文件读写、函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

python文件读写、函数

1、文件读写

# 读写文件
# 读文件
f = open("data/a.txt")
print(f.read(5))  # 指定读取的字符数
print(f.readline())  # 读取一行
for line in f.readlines():
    # 读取所有行 并将每一行最为list中的一个元素 最终返回一个list
    print(line.strip())  # strip 字符串方法:取出字符串两边的隐藏字符

# 用完记得关闭
f.close()

# 写文件
f2 =open("data/b.txt",mode='w')  # 若想追加写,就把参数改成 a
f2.write('1\n')
f2.write('2')
f2.write('3')
f2.writelines(['a','b','c'])

# 用完记得关闭
f2.close()

# with open
# 会自动调用close方法
# 读一个文件写另一个文件
with open("data/a.txt",mode='r') as f1:
    with open("data/c.txt",mode='a') as f2:
        for line in f1.readlines():
            f2.write(line)

2、函数

# 函数
# 定义函数
'''
def 函数名(参数1,参数2):
    函数体
    函数体
    函数体
    return 返回值
'''


# 计算a的平方
def pingfang(a):
    return a ** 2


print(pingfang(3))


# 函数式编程
# 函数作为参数
def func1(f):
    res = f(4)
    print(res)


func1(pingfang)


# 函数作为返回值
def func2():
    def func3():
        print("func3")
        return 1

    return func3

print(func2()())

# 参数类型
# 计算a的n次方
# a b : 位置参数(必选参数)
# n : 默认参数(可以不传)
def NciFang(a, b, n=2):
    return a ** n


print(NciFang(2, 1))
print(NciFang(3, 1))
print(NciFang(4, 1))

# 计算n个数之和
# *nums :可变参数 可以接受任意多个参数
def sumN(*nums):
    sum = 0
    for num in nums:
        sum += num
    print(sum)


sumN(1)
sumN(1, 2)
sumN(1, 2, 3)
sumN(1, 2, 3, 4)

# 想要获取传入的参数的名字
# **args :关键字参数 相当于字典
def printParaName(**args):
    if "a" in args.keys():
        print("has a param")
    else:
        return
    for i, j in args.items():
        print(i, j)


printParaName(a=1, b=2, c=3)
printParaName(b=2, c=3)

# 命名关键字参数
# a, b, c 命名关键字参数 :调用该函数时必须传入的参数,而且要通过 参数名=参数值 这种形式传入
# 定义的时候 funcName(*, a, b, c) 参数前加 “*,”
# 如果命名关键字参数前有可变参数 则 “*,”可以省略
def funcName(*nums, a, b, c):
    print(a, b, c)


funcName(a=1, b=2, c=3)

# 匿名函数
# lambda表达式
f4 = lambda a: a ** 3
func1(f4)
print(f4(3))
这篇关于python文件读写、函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!