提到python的输入,我们首先想到的是xxx=input(),这个是我们最常见与最常用的用法,其实,在某些特殊的输入条件下,我们需要灵活搭配多种方法来解决各种各样的输入条件,下面对python输入方法做一些介绍:
- 多元搭配实现各种输入方式的输入
首先来介绍一下常用的一些搭配
(1)输入一个整数
# 123
in_1 = int(input())
(2)输入两个或多个整数
# 12 24 48
in_1,in_2,in_3 = map(int,input().split())
(3)输入一行字符串或单个字符
# helloPythonExE 或 A
in_1 = input()
(4)输入多个字符串或多个字符
# ab bc cd 或 a b c
in_1,in_2,in_3 = input().split()
(4)输入一行整数数组形式
# 1 2 3 4 5 6 7 8
in_1 = list(map(int,input().split()))
(5)输入一行字符数组或字符串数组形式
# ab abd abcd ef efg fgh hijk 或 a b c d e f g h i
in_1 = list(input().split())
(6)输入一行需要以特定字符分割的数组形式
# ab-cd-ef-gh-ij-kl-mn
in_1 = list(input().split('-'))
# aaa*bbb*ccc*ddd*eee
in_2 = list(input().split('*'))
(7)列表生成式方式存入一行数组形式输入
# aaa bbb ccc 111 123 456 sss
list_1 = [x for x in input().split(' ')]
差不多了,再介绍一下多行输入以及不指定行数的输入(以下指定行数的示例以5行为例)
(1)输入指定行数的字符串或字符
# aaaaa
# bbb
# cccc
# d
# eeee
for x in range(5):
in_x = input()
(2)输入指定行数的整数(其实只需在上面的基础上加个int即可)
# 12
# 345
# 67
# 8
# 9
for x in range(5):
in_x = int(input())
(3)输入指定行数的数组形式(以整数元素为例,字符串或字符只需替换map中的int为str)
# 1 2 3 4 5
# 2 3 4 5 6
# 7 8 9 0 1
# 3 3 3 3 3
# 1 3 5 6 7
for x in range(5):
in_x = list(map(int,input().split()))
(4)以列表生成式方式输入指定行数字符串或字符
# abcd
# 1234
# xyz
# 12abc
# cccc
in_1 = [input() for x in range(5)]
print(in_1)
(5)以列表生成式方式输入指定行数整数
# 12
# 345
# 6789
# 567
# 10
in_1 = [int(input()) for x in range(5)]
print(in_1)
(6)以列表生成式方式输入指定行数数组形式(字符串或字符数组形式只需替换map中的int为str)
# 123 456 789 1000
# 12 34 56 78
# 77 888 9999
# 1000 100 10 1
# 6 66 666 6666
in_1 = [list(map(int,input().split())) for x in range(5)]
(7)输入不指定行数,并以特定输入为结尾停止输入(以输入字符串‘0000’结束为例)
# 1111
# 2222
# 3333
# 4444
# 0000
while True:
in_1 = input()
if in_1 == '0000':
break
(8)输入不确定的行数,并且不知道何时会停止输入
# aaa
# bbbc
# ddd
# eee
# ............还需输入多少行未知
while True:
try:
in_1 = input()
except:
break
2.标准型输入sys.stdin.readline()
与我们常用的input()输入方式不同,sys.stdin.readline()是python的标准输入方式,它不像input一样需要处理尾部的回车符号,直接将一行全部读入,相比input(),在大量输入时sys.stdin.readline()更省时,用处很大,而且多元搭配依然用得上它,用法同以上用法,只需替换input()为sys.stdin.redaline(),需要注意的是因为它不处理换行符,使用时注意需要处理换行符的情况,手动处理换行符可以用replace('\n','')等多种方法,还有,就是需要导包
(1) sys.stdin.readline()读入一行
# hello readline
import sys
in_1 = sys.stdin.readline()
总结
到此这篇关于Python输入的多种情况超详细解读的文章就介绍到这了,更多相关Python单行、多行及数组输入内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持vb.net教程C#教程python教程!