美文网首页
Python程序结构2

Python程序结构2

作者: 潇洒坤 | 来源:发表于2018-06-29 13:46 被阅读7次

2018年6月28日笔记

上午上课前分享

高等数学求解及作图软件:mathmatica

5.循环嵌套

循环嵌套1.png-38.7kB循环嵌套1.png-38.7kB
循环嵌套2.png-50.2kB循环嵌套2.png-50.2kB
循环嵌套3.png-46.8kB循环嵌套3.png-46.8kB
循环嵌套4.png-55.6kB循环嵌套4.png-55.6kB

左上九九乘法表

if __name__ == '__main__':
    for i in range(1,10):
        for j in range(1,11-i):
            print("%d*%d=%2d" %(i,j,i*j),end=' ')
        print()

上面一段代码的运行结果如下:


左上99乘法表.png-15.1kB左上99乘法表.png-15.1kB

左下九九乘法表

if __name__ == '__main__':
    for i in range(1,10):
        for j in range(1,i+1):
            print("%d*%d=%d" %(i,j,i*j),end=' ')
        print()

上面一段代码的运行结果如下:


左下99乘法表.png-15.1kB左下99乘法表.png-15.1kB

右上九九乘法表

if __name__ == '__main__':
    for i in range(1,10):
        for j in range(1,i):
            print(' '*7,end='')
        for j in range(i,10):
            print("%d*%d=%-2d" %(i,j,i*j),end=' ')
        print()

上面一段代码的运行结果如下:


右上99乘法表.png-16.7kB右上99乘法表.png-16.7kB

右下九九乘法表

if __name__ == '__main__':
    for i in range(1,10):
        for j in range(1,10-i):
            print(' '*7,end='')
        for j in range(10-i,10):
            print("%d*%d=%-2d" %(i,j,i*j),end=' ')
        print()

上面一段代码的运行结果如下:


右下九九乘法表.png-16.7kB右下九九乘法表.png-16.7kB

6.推导式

下面两段代码的作用相同,但是推导式对数据处理更加简单、高效。

items = []
for i in range(1,11):
    items.append(i)
items = [i for i in range(1,11)]

用代码验证推导式的高效性

import time
if __name__ == '__main__':
    startTime = time.time()
    list1 = []
    for i in range(1,10000000):
        list1.append(i)
    print(time.time()-startTime)

    startTime = time.time()
    list2 = [k for k in range(1,10000000)]
    print(time.time()-startTime)

上面一段代码的运行结果如下,从下面的结果可以看出速度差距为2、3倍左右,当数据量更大时,可能差距更大。:

2.5785739421844482
0.9168956279754639

多个推导式示例:

if __name__ == '__main__':
    a = [i**2 for i in range(1,10)]
    b = [j+1 for j in range(1,10)]
    c = [n for n in range(1,10) if n % 2 == 0]
    d = [letter.lower() for letter in 'ABCDEFGHIJK']
    print(a,b,c,d,sep='\n')

上面一段代码的运行结果如下:

[1, 4, 9, 16, 25, 36, 49, 64, 81]
[2, 3, 4, 5, 6, 7, 8, 9, 10]
[2, 4, 6, 8]
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k']

7.循环控制

示例1:如果某字母在字符串中存在,则直接跳出循环

if __name__ == '__main__':
    for letter in 'Python':
        if letter == 'h':
            break
    print(letter)

上面一段代码的运行结果如下:

h

在python中,for...else结构的作用,else后面接的执行语句在for循环正常执行完,即不是通过break跳出的情况下才会执行。代码示例如下:

if __name__ == '__main__':
    for i in range(10):
        if i == 5:
            print("found it! i = %d"%i)
            break
    else:
        print("No found it....")

上面一段代码的运行结果如下:

found it! i = 5

for循环练习

有四个数字:1、 2 、3、 4,能组成多少个互不相同且无重复数字的三位数?各是多少?

if __name__ == '__main__':
    result = set()
    for i in range(1,5):
        for j in range(1,5):
            for k in range(1,5):
                if len(set([i,j,k])) == 3:
                    result.add(i*100+j*10+k)
    print(result)
    print(len(result))

上面一段代码的运行结果如下:

{132, 134, 142, 143, 412, 413, 421, 423, 431, 432, 312, 314, 321, 324, 213, 214, 341, 342, 231, 234, 241, 243, 123, 124}
24

相关文章

  • Python程序结构2

    2018年6月28日笔记 上午上课前分享 高等数学求解及作图软件:mathmatica 5.循环嵌套 左上九九乘法...

  • K01-01:Python UI:Kivy入门

    本主题内容:1、Kivy程序结构2、Kivy的帮助文档(Kivy框架的安装,可以参考:【随笔01:安装Python...

  • Python pass 语句

    2018-06-28 ###Python pass 语句 #Python pass是空语句,是为了保持程序结构的完...

  • 2 mysql 体系架构

    2. mysql 体系架构 连接方式TCP/IPSocket mysqld程序结构mysqld程序结构mysql程...

  • 白话python连载(2)--python的程序结构

    欢迎关注公众号【哈希大数据】,哈希大数据致力于互联网、金融、物流等行业大数据采集、分析、营销与决策提供综合解决方案...

  • 【笔记】《Python语言以及应用》- 基础语法

    主要内容:Python基本元素:数字、字符串和变量Python容器:列表、元组、字典、集合程序结构 一、Pytho...

  • Python语法简介

    Python程序结构 程序由模块构成。 模块包含语句。 语句包含表达式。 表达式建立并处理对象。 Python语句...

  • Python基础教程:Python pass语句详解

    Python pass 语句 Python pass是空语句,是为了保持程序结构的完整性。 pass 不做任何事情...

  • Python程序结构

    2018年6月27日笔记 python流程控制 1.python流程控制语句结构 4种流程控制语句结构:ifif ...

  • Python程序结构 ——❀JN

    python编程基础:程序结构 1.顺序结构 按照从上到下的顺序,逐行解释执行的代码 2.选择结构 模拟生活中的选...

网友评论

      本文标题:Python程序结构2

      本文链接:https://www.haomeiwen.com/subject/bmvoyftx.html