python是面向过程的吗

anonymity
Lepaskan: 2019-06-14 09:55:18
asal
7344 orang telah melayarinya

python是面向过程的吗?

python是面向过程的吗

1、面向过程:核心是过程二字,过程指的是解决问题的步骤,好比如设计一条流水线,是一种机械式的思维方式。

就是程序从上到下一步步执行,一步步从上到下,从头到尾的解决问题 。基本设计思路就是程序一开始是要着手解决一个大的问题,然后把一个大问题分解成很多个小问题或子过程,这些子过程再执行的过程再继续分解直到小问题足够简单到可以在一个小步骤范围内解决。

2、优缺点

优点:将复杂的问题流程化,进而简单化。

缺点:扩展性差

3、实例:面向过程式的登录注册程序  

import json,re
def login():
    '''
    用户输入
    :return:
    '''
    usename = input('用户名:').strip()
    pwd = input('密码:').strip()
    tel = input('电话:').strip()
    mail = input('邮箱:').strip()
    return {
        'usename':usename,
        'pwd':pwd,
        'tel':tel,
        'mail':mail
    }
def authentication(use_info):
    '''
    判断用户名和密码等信息是否合法
    :return:
    '''
    is_valid = True # 默认合法
    if len(use_info['usename'])==0:
        print('用户名不能为空!')
        is_valid = False
    if len(use_info[&#39;pwd&#39;])< 6:
        print(&#39;密码长度不得小于6位!&#39;)
        is_valid = False
    if len(re.findall(&#39;1[0-9]{10}&#39;,use_info[&#39;tel&#39;]))==0:
        print(&#39;电话格式不对!&#39;)
        is_valid = False
    if not re.search(r&#39;@.*?.com$&#39;,use_info[&#39;mail&#39;]).group(): # 使用Python的r前缀,就不用考虑转义的问题,&#39;*&#39;加个?就可以让&#39;.&#39;采用非贪婪匹配
        print(&#39;邮箱格式不对&#39;)
        is_valid = False
    return {
        &#39;valid&#39;:is_valid,
        &#39;info&#39;:use_info
    }
def register(auth):
    &#39;&#39;&#39;
    若输入信息合法则注册,写入文件或数据库
    :param auth:
    :return:
    &#39;&#39;&#39;
    if auth[&#39;valid&#39;]==True:
        with open(&#39;data.json&#39;,&#39;w&#39;,encoding=&#39;utf-8&#39;) as f:
            json.dump(auth[&#39;info&#39;],f)
def main():
    &#39;&#39;&#39;
    主逻辑程序
    :return:
    &#39;&#39;&#39;
    use_info = login()
    auth = authentication(use_info)
    register(auth)
if __name__==&#39;__main__&#39;: # 直接调用时执行下列程序,被调用时不执行
    main()
Salin selepas log masuk

注意:一般认为, 如果你只是写一些简单的脚本,去做一些一次性任务,用面向过程的方式是极好的,但如果你要处理的任务是复杂的,且需要不断迭代和维护 的, 那还是用面向对象最方便。

Atas ialah kandungan terperinci python是面向过程的吗. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!