2019-05-21

-----------------------------------

# 打印出一个矩形
# 控制行
for i in range(1, 5):
    #控制列
    for j in range(1, 6):
        print('*', end= " ")
    #当第i行的5列输出完后进行换行  
    print()   
 # 分割一下输出,用的是字符串乘法
print('='*20)
#打印空心矩形
for i in range(1, 5):
    for j in range(1, 6):
        if i==1 or i==4 or j==1 or j==5:
            print("*", end=" ")
        else:
            print(' ', end=" ")
    print()

-----------------------------------

 # 打印直角三角形
# 控制行
for i in range(1,6):
    # 控制列,规则是第一行一列,第二行是二列
    for j in range(6-i, 6):
        print('*', end=" ")
    print()
print('='*20)
------------------------------------
# 打印直角三角形
# 控制行
for i in range(1,6):
    # 控制列,规则是第一行五列,第二行是四列 i=1,j的范围是6, i=2, j=5
    for j in range(1, 7-i):
        print('*', end=" ")
    print()
print('='*20)
for i in range(1, 6):
    # 控制列,规则是第一行五列,第二行是四列 i=1,j的范围是6, i=2, j=5
    for j in range(1, 7-i):
        if i==1 or i==5 or j==1 or j==7-i-1:
            print('*', end=" ")
        else:
            print(' ', end=" ")
    print()
---------------------------------------
# 打印等腰三角形
# 控制行
for i in range(5):
    for j in range(1,5 - i):
        print(end=" ")
    # 控制列,规则是第一行五列,第二行是四列 i=1,j的范围是6, i=2, j=5
    for k in range(5 - i, 6):
        print('*', end=" ")
       
    print()
print('='*20)
---------------------------------------
#控制行
for i in range(1, 6):
    for k in range(1, 6 - i):
        print(end = " ")
    #控制列,规则是第一行一列,第二行是二列
    for j in range(6-i, 6):
        print('*', end=" ")
    print()
   
print('='*20)
--------------------------------------
#空心
#控制行
for i in range(1, 6):
    for k in range(1, 6 - i):
        print(end = " ")
    #控制列,规则是第一行一列,第二行是二列
    for j in range(6-i, 6):
        if i==1 or i==5 or j==6-i or j==5:
            print('*', end=" ")
        else:
            print(' ', end=" ")
    print()
   
print('='*20)
---------------------------------------------
函数
---------------------------------------------
#实心矩形
def s_jx():
    #控制行
    for i in range(1, 5):
        #控制列
        for j in range(1, 6):
            print('*', end=" ")
        #当第i行的5列输出完后进行换行
        print()
#空心矩形
def k_jx():
    for i in range(1, 6):
        for j in range(1, 6 - i):
            print(end = " ")
        #控制列,规则是第一行一列,第二行是二列
        for j in range(6-i, 6):
            if i==1 or i==5 or j==6-i or j==5:
                print('*', end=" ")
            else:
                print(' ', end=" ")
        print()
# 正着实心等腰直角三角形
def s_sjx():
    #控制行
    for i in range(1, 6):
        #控制列,规则是第一行一列,第二行是二列
        for k in range(6-i, 6):
            print('*', end = " ")
        print()
       
#正着空心等腰直角三角形
def k_sjx():
    for i in range(1, 6):
        for j in range(6-i, 6):
            if i == 1 or i == 5 or j == 6 - i or j == 5:
                print('*', end= " ")
            else:
                print(' ', end=" ")
        print()
shape = input("请输入实心矩形,实心三角形,空心矩形,实心三角形")
if shape =="实心矩形":
    s_jx()
elif shape == "空心矩形":
    k_jx()
elif shape == "实心三角形":
    s_sjx()
elif shape == "空心三角形":
    k_sjx()
else:
    print('你是不是傻')
-----------------------------------------
 #实心矩形
def s_jx():
    #控制行
    for i in range(1, 5):
        #控制列
        for j in range(1, 6):
            print('*', end= " ")
        #当第i行的5列输出完后进行换行
        print()
s_jx()
-------------------------------------------
#实心矩形
def s_jx():
    #控制行
    for i in range(1, 5):
        #控制列
        for j in range(1, 6):
            print('*', end= " ")
        #当第i行的5列输出完后进行换行
        print()
s_jx()
print('='*20)
#空心矩形
def k_jx():
    for i in range(1, 5):
        for j in range(1, 6):
            if i==1 or i==4 or j==1 or j==5:
                print("*", end=" ")
            else:
                print(' ', end=" ")
       
        print( )
k_jx()
-----------------------------------
 

Python---基础---循环,函数的更多相关文章

  1. python基础——返回函数

    python基础——返回函数 函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回.  我们来实现一个可变参数的求和.通常情况下,求和的函数是这样定义的: def calc_ ...

  2. python基础——filter函数

    python基础——filter函数 Python内建的filter()函数用于过滤序列. 和map()类似,filter()也接收一个函数和一个序列.和map()不同的是,filter()把传入的函 ...

  3. python基础之函数详解

    Python基础之函数详解 目录 Python基础之函数详解 一.函数的定义 二.函数的调用 三.函数返回值 四.函数的参数 4.1 位置参数 4.2 关键字参数 实参:位置实参和关键字参数的混合使用 ...

  4. python基础——匿名函数

    python基础——匿名函数 当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便.  在Python中,对匿名函数提供了有限支持.还是以map()函数为例,计算f(x)=x2时 ...

  5. python基础——sorted()函数

    python基础——sorted()函数 排序算法 排序也是在程序中经常用到的算法.无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小.如果是数字,我们可以直接比较,但如果是字符串或者两个d ...

  6. python基础——匿名函数及递归函数

    python基础--匿名函数及递归函数 1 匿名函数语法 匿名函数lambda x: x * x实际上就是: def f(x): return x * x 关键字lambda表示匿名函数,冒号前面的x ...

  7. 八. Python基础(8)--函数

    八. Python基础(8)--函数 1 ● 函数返回布尔值 注意, 自定义的函数也可以是用来作逻辑判断的, 例如内置的startswith()等函数. def check_len(x):     ' ...

  8. Python学习笔记(一)python基础与函数

    1.python基础 1.1输入与输出 输出 用print加上字符串,就可以打印指定的文字或数字 >>> print 'hello, world' hello, world > ...

  9. Python基础:函数

    一.概述 二.声明.定义和调用 三.参数 1.参数传递 2.实参类型 3.形参绑定 四.返回值 五.名字空间与作用域 1.基本概念 2.名字空间 3.作用域 4.总原则 六.高级 1.装饰器 2.生成 ...

  10. Day3 - Python基础3 函数、递归、内置函数

    Python之路,Day3 - Python基础3   本节内容 1. 函数基本语法及特性 2. 参数与局部变量 3. 返回值 嵌套函数 4.递归 5.匿名函数 6.函数式编程介绍 7.高阶函数 8. ...

随机推荐

  1. POJ2395 Out of Hay(求最小生成树中最大的边权,Kruskal)

    POJ2395 Out of Hay 寻找最小生成树中最大的边权. 使用 Kruskal 求解,即求选取的第 \(n-1\) 条合法边. 时间复杂度为 \(O(e\log e)\) . #includ ...

  2. Oracle Flashback Transaction Query with Oracle Flashback Version Query

    Oracle Flashback Transaction Query with Oracle Flashback Version Query In this example, a database a ...

  3. websocket 无需通过轮询服务器的方式以获得响应 同步在线用户数 上线下线 抓包 3-way-handshake web-linux-shell 开发

    https://code.google.com/archive/p/phpwebsocket/source/default/source The WebSocket API (WebSockets) ...

  4. WinForm实现最小化右下角

    首先,要在窗体里面加入这么两个控件,左边的是托盘控件,右边的是菜单控件. 然后设置窗体的FormClosing事件: if (e.CloseReason == CloseReason.UserClos ...

  5. PHP密码和token

    密码 直接md5和sha1不安全!!! crypt()和hash_equals(): http://php.net/manual/zh/function.crypt.php <?php // c ...

  6. Oracle数据库文件导出为CSV格式的方法

    1 安装PLSQL Developer,并连接Oracle数据库. 2 执行sql语句,将要导出的表格显示出来. select * from table名; 3 如下点击导出查询结果,选择数据格式,即 ...

  7. Delphi7中ClientDataSet的排序

    http://eteda.iteye.com/blog/1141312 Delphi7中ClientDataSet的排序 博客分类: Delphi   1.控件ClientDataSet的属性Inde ...

  8. centos6.5搭建禅道

    linux用一键安装包 简介:本文介绍如何在linux下面使用禅道一键安装包搭建禅道的运行环境. 一.安装 二.如何访问数据库 linux一键安装包内置了XXD.apache, php, mysql这 ...

  9. vue组件生命周期

    分为4个阶段:create/mount/update/destroy 每一个阶段都对应着有自己的处理函数 create: beforeCreate created 初始化 mount: beforeM ...

  10. 今天起,重新开头学习Java - 一、安装环境

    先拜领路人 https://blog.csdn.net/u011541946/article/category/6951961/3? 一.安装JDK 1. 下载 www.java.com JDK是Ja ...