python提前结束函数 python结束程序的语句

python def定义完函数后怎么退出,以及如何调用函数

首先分两种情况:

创新互联建站2013年开创至今,先为磁县等服务建站,磁县等地企业,进行企业商务咨询服务。为磁县企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

1.交互窗口处执行:这个时候由于python的强制缩进,因此想要结束函数的定义只需要按两下enter即可。

2.在.py文件中编写,结束函数只需要不再缩进即可

调用函数方法相同,把函数名及参数写上就可以了,如果有返回值可以

r=functionA(var1)

附:测试代码(python3运行通过)

# -*- coding:utf-8 -*-

#author:zfxcx

def pt():

print("hello")

pt()

在python里什么函数可以让后面的指令停止执行

函数内用 return

函数外用 exit()

说明,函数内也可用 exit() 停止后面的指令执行,但这样会使基于函数的线程出现问题,所以不建议在函数内使用 exit(),函数内如果不想执行指令了,最好用 return 进行结束函数,这样可以把控制权交给主调函数,而不是退出程序

扩展资料:

return语句是python语言中函数返回的一个值,每个函数都应该有一个返回值,其中,return返回值可以是一个数值,一个字符串,一个布尔值,一个列表,或者函数。

在Python中return函数返回值return,函数中一定要有return返回值才是完整的函数,如果用户没有定义Python函数返回值,那么得到的结果是None对象。

Python小例-8-记账小程序

import pickle

import time

import os

def cost(fname):

'用于记录花费'

cost_time = time.strftime('%Y-%m-%d')

try:#异常处理机制

    cost_deposit = int(input('花销金额:'))

    cost_mark = input('花销说明:')

except ValueError:

    print('无效的金额')

    return # 函数的return类似于循环的break,return提前结束函数。

except (KeyboardInterrupt, EOFError):

    print('\nbye-bye')

    exit(1)

# 在文件中取出所有的收支记录

with open(fname,'rb') as fobj:

    records = pickle.load(fobj)

# 计算最新余额

balance = records[-1][-2] - cost_deposit

# 构建最新一笔收入

record = [cost_time,0,cost_deposit,balance,cost_mark]

# 将收入追加到收支列表中

records.append(record)

# 将最新收支情况写入文件

with open(fname,'wb') as fobj:

    pickle.dump(records,fobj)

def save(fname):

save_time = time.strftime('%Y-%m-%d')

try:

    save_deposit = int(input('收入金额:'))

    save_mark = input('收入说明:')

except ValueError:

    print('无效的金额')

    return

except (KeyboardInterrupt,EOFError):

    print('bye-bye')

    exit(1)

with open(fname, 'rb') as fobj:

    records = pickle.load(fobj)

balance = records[-1][-2] +  save_deposit

record = [save_time,save_deposit,0,balance, save_mark]

records.append(record)

with open(fname, 'wb') as fobj:

    pickle.dump(records, fobj)

def query(fname):

'用于查账'

# 打印表头

print(f'{"date":15}{"save":8}{"cost":8}{"balance":12}{"mark":50}')

with open(fname,'rb') as fobj:

    records = pickle.load(fobj)

for date,cost,save,balance,mark in records:

    print(f'{date:15}{cost:8}{save:8}{balance:12}{mark:50}')

def menu():

funcs = {'0':cost,'1':save,'2':query}

prompt = '''(0)开销

(1)收入

(2)查询

(3)退出

请选择(0/1/2/3):'''

fname = 'account.data'

if not os.path.exists(fname):

    init_data = [[time.strftime('%Y-%m-%d'),0,0,10000,'init_data']]

    with open(fname,'wb') as fobj:

        pickle.dump(init_data,fobj)

while 1:

    try:

        choice = input(prompt).strip()

    except(KeyboardInterrupt,EOFError):

        choice = '3'

    if choice not in ['0','1','2','3']:

        print('无效输入,重试')

        continue

    if choice == '3':

        print('\nbye_bye')

        break

    funcs[choice](fname)

if __name__ == '__main__':

menu()


网站栏目:python提前结束函数 python结束程序的语句
文章分享:http://scyanting.com/article/hjhejj.html