- readline() 会返回一个字符串;
- 如果指定了一个非负数的参数readline(size) ,则返回指定大小的字节数,包括 “\n” 字符。
示例:
import sys
line1 = sys.stdin.readline(3)#读三个字符
line2 = sys.stdin.readline()#读一行
print(line1)
print(type(line1))
print(line2)
# 若给定输入为: beautiful
# 输出结果:
bea
<class 'str'>
beautiful
- strip() 只能用于移除字符串 开头和结尾 指定的字符(一般是默认为空格或换行符)或字符序列
示例:
a = ' 8dajia8hao8 '
b = a.strip()#移除字符串 开头和结尾 的空格或换行符
c = b.strip('8')#移除字符串 开头和结尾 的指定的字符'8'
d = b.strip('o8')#移除字符串 开头和结尾 的指定的字符序列'o8'
print(b)
print(c)
print(d)
# 结果为:
# 8dajia8hao8
# dajia8hao
# dajia8ha
- split() 默认分割所有的空字符,包括空格、换行(\n)、制表符(\t)等,返回分割后的字符串列表。
示例:
s = "I love you"
print(s.split())#以空格为分隔符
print(s.split('0'))#以o为分隔符
print(s.split('o',1))#以o为分隔符,分成2个
print(s.split('y'))#以y为分隔符
# 运行结果:
['I', 'love', 'you']
['I l', 've y', 'u']
['I l', 've you']
['I love ', 'ou']
获取输入的单行数据
- 字符串
输入:'abdc'
import sys
line = sys.stdin.readline()
#print(line) #结果为 'abdc'
###### 或者
n = input()
#print(n) #结果为 'abdc'
- 单个数字
输入: 5
n=int(input())
#print(n) #结果为 5
import sys
n = int(sys.stdin.readline())
#print(n) #结果为 5
- 注意:sys.stdin.readline()和 int(sys.stdin.readline())的区别
sys.stdin.readline()
<class 'str'>
int(sys.stdin.readline())
<class 'int'>
获取输入的单行多个数据
- 两个数值
输入 : 5 6
import sys
x, y = map(int, sys.stdin.readline().strip().split())
#print(x,y) #结果为 5 6
# 或者
x, y = map(int, input().split())
#print(x,y) #结果为 5 6
- 单行多个数值
单行输入:2 3 6 4 8 9
import sys
data = list(map(int,sys.stdin.readline().strip().split()))
print(data)
# print(data) #结果为 [2, 3, 6, 4, 8, 9]
## 或者
data=list(map(int,input().split(" ")))
print(data)
#print(data) #结果为 [2, 3, 6, 4, 8, 9]
-
map函数的原型是map(function, iterable, …),它的返回结果是一个列表。
- 参数function传的是一个函数名,可以是python内置的,也可以是自定义的。
- 参数iterable传的是一个可以迭代的对象,例如列表,元组,字符串这样的。
- python中的map函数是python中的内置函数,map函数会根据提供的函数对指定序列做映射,map函数的第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表:其实就是对可迭代的对象中的每一个元素调用function函数并将函数处理的结果转为列表返回。
- 在蓝桥杯的杯赛中经常要使用这个函数对输入的数据转换为int类型的数据:a,b = map(int, input().split())
- 第一行表示将会有多少行数据,下面各个行有单个数据
# 输入 '''
3
5
7
9
'''
# 方法1
n = int(input())
data = []
for i in range(n):
b = int(input())
data.append(b)
print(data)
#print(data) #结果为 [5, 7, 9]
# 方法2
import sys
n = int(input())
data = []
for i in range(n):
b = int(sys.stdin.readline().strip())
data.append(b)
#print(data) #结果为 [5, 7, 9]
- 第一行表示将会有多少行数据,下面各个行有多个数据(数字)
'''
输入:
3
5 3 4
4 6 6
7 5 9
'''
# 方法1
n = int(input())
data = []
for i in range(n):
b = list(map(int,input().split()))
data.append(b)
print(data)
#print(data) #结果为[[5, 3 ,4], [4,6, 6], [7, 5,9] ]
# 方法2
import sys
n = int(input())#strip()方法只能用于移除字符串 开头和结尾 指定的字符(默认为空格或换行符)或字符序列
data = []
for i in range(n):
b = list(map(int,sys.stdin.readline().strip().split()))
data.append(b)
print(data)
#print(data) #结果为[[5, 3 ,4], [4,6, 6], [7, 5,9] ]
- 第一行表示将会有多少行数据,下面各个行有单个数据(字符串)
'''
输入:
3
I
LOVE
YOU
'''
import sys
n = int(input())
data = []
for i in range(n):
line = sys.stdin.readline().strip()
if line == r'': # 等价于 if not line:
break
data.append(line)
print(data)
print(" ".join(data))
#print(data) # 结果为['I', 'LOVE', 'YOU']
#print(" ".join(data)) #结果为: I LOVE YOU
二、输出处理
- [‘1’,‘2’,‘3’,‘4’] 这样的格式要求变成1 2 3 4 5
a= ['1','2','3','4']
print(''.join(a)) #引号里没空格,结果为 1234
print(' '.join(a)) #引号里有空格,结果为 1 2 3 4
print(','.join(a)) #引号里有空格,结果为 1,2,3,4
- 或者循环输出
a= ['1','2','3','4']
for i in range(len(a)):
print(a[i],end=' ')
#输出: 1 2 3 4
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)