zoukankan      html  css  js  c++  java
  • 面向过程编程及各种表达式

    面向过程编程:

    核心是'过程'二字,过程 指的是一种解决问题的步骤,即先干什么再敢什么
    基于该编程思想编写程序,就好比在设计一条工厂流水线,一种机械式的思维方式

    -优点:将复杂的问题流程化,进而简单化
    -缺点:若修改当前程序设计的某一部分,会导致其他部分同时需要修改
    牵一发而动全身,可扩展性差

    三元表达式:可以将if...else...分支编成一行。

    语法:
    	条件成立,返回左边的值 if 判断条件 else 条件不成立返回右边的值
    
    
    #通过if...else语法
    def max2(num1,num2):
    	if num1>num2:
    		return num1
    	else:
    		return num2
    res = max2(10,20)
    print(res)
    
    #三元表达式
    num1 = 10
    num2 = 20
    def max2(num1,num2):
        res = num1 if num1 > num2 else num2
        return res
    res = max2(num1,num2)
    print(res)
    
    # 需求: 让用户输入用户名,输入的用户如果不是tank,为其后缀添加_DSB
    username = input('请输入用户名:').strip()
    new_username = username if username == 'tank' else username + '_DSB'
    print(new_username)
    

    列表生成式:可以一行实现生成列表

    语法:
    	list = [取出的每一个值添加到当前列表中、任意值 for 可迭代对象中取出的每一个值 in 可迭代对象
    	# for的右边是循环次数,并且可以取出可迭代对象中每一个值
    	# for的左边可以为当前列表添加值
    	list = [值 for 可迭代对象中取出的每一个值 in 可迭代对象]
    	list = [值 for 可迭代对象中取出的每一个值 in 可迭代对象 if 判断]
    	
    
    # 需求:将list中的值,依次取出,添加到l1中
    list = [1,2,3,4]
    l1 = []
    for i in list:
        l1.append(i)
    print(l1)
    
    # 普通方式
    new_list = []
    for i in range (1,101):
        new_list.append(i)
    print(new_list)
    
    #列表生成器
    list = [ i for i in range(1,5)]
    print(list)
    >>>[1,2,3,4]
    
    list = [ 1 for i in range(1,5)]
    print(list)
    >>>[1,1,1,1]
    
    list = [ 'baohan' for i in range(1,5)]
    print(list)
    >>>['baohan','baohan','baohan','baohan']
    
    #需求:将name_list列表中的每一个人后缀都添加_dsb
    name_list = ['jason', '饼哥', 'sean', 'egon']
    new_name_list = [name + '_dsb' for name in name_list]
    print(new_name_list)
    

    生成器表达式(生成器生成式):

    - 列表生成式:  若数据量小时采用
    	[line for line in range(1, 6)] ---> [1, 2, 3, 4, 5]
        优点:可以依赖于索引取值,取值方便
        缺点:浪费资源
        
    - 生成器生成式:  若数据量过大时采用
    	() ---> 返回生成器
    	(line for line in range(1, 6)) ---> g生成器(1, 2, 3, 4, 5)
    	优点:节省资源
    	缺点:取值不方便
    
    # 生成一个有1000个值的生成器
    g = (line for line in range(1, 1000001))
    print(g)           # <generator object <genexpr> at 0x00000203262318E0>
    g1 = list(g)
    print(g1)
    
  • 相关阅读:
    CSS-16-margin值重叠问题
    CSS-15-定位
    CSS-14-浮动
    CSS-13-块级元素和行内元素
    CSS-12-盒子模型
    CSS-11-外边距
    CSS-10-内边距
    CSS-09-背景属性
    CSS-08-边框属性设置
    CSS-07-CSS文本设置
  • 原文地址:https://www.cnblogs.com/baohanblog/p/12143042.html
Copyright © 2011-2022 走看看