Python多行输入怎样实现,代码是什么

Admin 2022-11-03 群英技术资讯 299 次浏览

这篇文章将为大家详细讲解有关“Python多行输入怎样实现,代码是什么”的知识,下文有详细的介绍,小编觉得挺实用的,对大家学习或工作或许有帮助,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。



  •  

    一、概述

    在Python里,我们有时候会做需要多行输出的程序。

    例如:

    1、点餐系统 不停地问:你要点什么食物?

    2、文本编辑 不停地输入文字(仅限IDLE等Python自带编辑器 )

    我们Python中有一种输入语句 : input

    但是,它只能单行输入

    所以呢,我们就要通过Python的其他语句来实现多行输入

    二、代码部分

    1、已知行数多行输出

    我们现在在已知行数的情况下多行输入,就很好办。

    首先我们要获取行数:

    lines = int(input("请输入您要输入的行数"))
    

    之后就第一行、第二行、第三行……第n行这样输入就行了。我们可以用for循环解决。

    for i in range(lines):
        text += input("输入内容") + '\n'    #引入一个text变量储存数据  
    

    最后的完整代码:

    text = ''
    lines = int(input("请输入您要输入的行数"))
    for i in range(lines):
        text += input("输入内容") + '\n'
    print(text)
    

    输出:

    2、未知行数多行输出

    当我们在输入多行文本的时候,因为我们不知道要输入多少行,所以如果再按已知行数多行输入的方法的话,有可能行数就会输少了。所以,未知行数多行输入的方法的重要性自然而然地也就出来了。

    未知行数多行输入需要有一个终止标志,比如说输入“stop”就终止;输入“停”就终止;一换行就终止……这样才可以让程序知道:嗯,写完了。
    这次我们使用换行来表示终止。

    首先,我们需要一个提示语句,在input()语句中我们写在括号里,这次我们直接用print语句输出。

    print("开始写文章")

    然后,因为我们要不停地让他输入,所以要用一个死循环。再不停执行input语句。注意,因为要不停输入内容,所以input语句中必须为空,如果填上输出语句,程序将不停输出提示语。而提示语因为只输出一遍就够了,所以我们在前面的代码需要提前用print语句输出出来。 之后再加个判断,如果输入的内容为空,则用break语句跳出循环。

    while True:
        line_text = input()
        if line_text == '':
        	break
        text += line_text + '\n'
    

    最后的完整代码:

    text = ''
    line_text = ''
    
    print("开始写文章")
    while True:
        line_text = input()
        if line_text == '':
        	break
        text += line_text + '\n'
    print(text)
    

    输出:

    三、拓展

    1、点餐系统

    def add_food(food_dict):
        
        add_foods = []
        money = 0
        print_i = 0
        foods = food_dict.keys()
        
        for i in food_dict:
            print_i += 1
            print("%d、%s%s元" % (print_i, i, food_dict[i]))
    
        while True:
            if len(add_foods) == 0:
                want = input("你想要食物")
                if want not in foods:
                    print("没有这个食物")
            elif len(add_foods) != 0:
                want = input("还要食物输入食物名称,不要就输入除食物名称外任意字符。你想要")
                if want not in foods:
                    break
            for k in foods:
                if want == k:
                    add_foods.append(want)
                    money += food_dict[k]
        print("总金额:%d" % money)
        return money, add_foods
    
    foods = {"香辣无骨鸡爪":5,
             "老八秘制小汉堡":10,
             "丝袜奶茶":5,
             "狗尿泡":7,
             "王致和臭豆腐":7,
             "鲱鱼罐头":10}
    
    money, food_list = add_food(foods)
    
    print("你点了", end = '')
    for food in food_list:
        if food_list.index(food) == len(food_list) - 1:
            print(food + '。')
        else:
            print(food + '、', end = '')
    

    输出:

    2、文本编辑

    import os
    file_name = ''
    replace = ''
    
    def add_diary(name):
    
        input_text = ''
        print("开始写日记:")
        while True:
            text = input()
            if len(text) == 0:
                break
            input_text += text + '\n'
    
        with open(name, 'w') as f:
            f.write(input_text)
            f.close()
    
    while file_name == '':
    
        file_name = input("输入一个你想要的文件名")
        if os.path.isfile(file_name + ".txt") == True:
            replace = input("文件夹中有此文件,是否替换?")
            if replace == '否':
                file_name = ''
    
    add_diary(file_name + '.txt')
    print(open(file_name + '.txt', 'r').read())
    

    输出:

    总结 



    到此这篇关于“Python多行输入怎样实现,代码是什么”的文章就介绍到这了,更多相关Python多行输入怎样实现,代码是什么内容,欢迎关注群英网络,小编将为大家输出更多高质量的实用文章! 群英智防CDN,智能加速解决方案
    标签: python多行输入

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

    猜你喜欢

    成为群英会员,开启智能安全云计算之旅

    立即注册
    专业资深工程师驻守
    7X24小时快速响应
    一站式无忧技术支持
    免费备案服务
    免费拨打  400-678-4567
    免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
    在线客服
    微信公众号
    返回顶部
    返回顶部 返回顶部
    在线客服
    在线客服