⽜客⽹刷题必备-输⼊输出(python)⽜客⽹输⼊输出python写法
⼀⾏输⼊ -> 分开的变量
直接接收输⼊
# 将输⼊分别存储到不同变量当中
# 只有⼀个输⼊直接转化类型即可
# a = int(input())
# 输⼊为整数
# 使⽤map函数将每个值强制转化为int型,保证数据类型不出错
# 输⼊的分隔符不同,split参数不同,默认为空格
a, b =map(int,input().split())
print('a:{}, type:{}'.format(a,type(a)))
print('b:{}, type:{}'.format(b,type(b)))
输出:
a:10, type:<class ‘int’>
b:20, type:<class ‘int’>
# 输⼊为字符串,不需要map
# input()返回类型即为字符串
c, d =input().split()
print('c:{}, type:{}'.format(c,type(c)))
print('d:{}, type:{}'.format(d,type(d)))
输出:
c:10, type:<class ‘str’>
d:20, type:<class ‘str’>
使⽤eval()
eval()函数⽤于执⾏⼀个字符串表达式
# 两个变量中间⽤逗号分隔
e, f =eval(input())
print('e:{}, type:{}'.format(e,type(e)))
print('f:{}, type:{}'.format(f,type(f)))
输出:
e:10, type:<class ‘int’>
f:20, type:<class ‘int’>
⼀⾏输⼊ -> ⼀个列表
# 输⼊为整数,将分开的变量放⼊list中
l1 =list(map(int,input().split()))
print(l1)
输出:
[1, 2, 3, 4, 5]
# 输⼊为字符串,直接将结果放⼊list中
l2 =list(input().split())
print(l2)
输出:
[‘ab’, ‘ef’, ‘gh’]
多⾏输⼊(⾏数已知)
# 第⼀⾏输⼊为⾏数,表⽰接下来有 n ⾏输⼊(或者直接已知不⽤输⼊)
# 输⼊可以是⼀⾏⼀⾏处理,也可以直接输出成矩阵
n =int(input())
data =[]
for _ in range(n):
s =input()
if s !='':
tmp =[j for j in s.split()]
#data.append(tmp[0])
data.append(tmp)
else:
break
print(data)
输出:
[[‘a’, ‘b’, ‘c’], [‘e’, ‘d’, ‘f’], [‘g’, ‘h’, ‘j’]] import sys
# 第⼀⾏输⼊为⾏数,表⽰接下来有 n ⾏输⼊
n =int(input())
data =[]
python格式化输出formatwhile True:
line = adline().strip()
if not line:
break
data.append(line)
print(data)
多⾏输⼊(⾏数未知)
data =[]
while True:
try:
s =input()
data.append(list(map(str,input().split(' '))))
except:
break
print(data)
python格式化输出
使⽤%
使⽤%输出不同进制
%o:oct⼋进制
%d:dec⼗进制
%x:hex⼗六进制
使⽤ % 保留⼩数
%f:默认保留⼩数点后六位有效数字
%.3f :保留三位⼩数位
%e:保留⼩数点后六位有效数字,科学计数法
%g:在保证六位有效数字的前提下,使⽤⼩数⽅式,否则使⽤科学计数法
尽量不使⽤round()取整,round()函数只有⼀个参数,不指定位数的时候,返回⼀个整数,⽽且是最靠近的整数,类似于四舍五⼊,当指定取舍的⼩数点位数的时候,⼀般情况也是使⽤四舍五⼊的规则,但是碰到.5的情况时,如果要取舍的位数前的⼩数是奇数,则直接舍弃,如果是偶数则向上取舍。
print('%f'%1.11)
print('%.6f'%1.23)
输出:
1.110000
1.230000
使⽤%s对字符串进⾏格式化输出
%10s:右对齐,占位符10位
%-10s:左对齐,占位符10位
%.2s:截取两位字符
%10.2s:左对齐,占位符10位,同时截取两位字符
print('字符串:','%s'%'Hello Kitty')
print('右对齐:','%20s'%'Hello Kitty')
print('左对齐:','%-20s'%'Hello Kitty')
print('截取串:','%.2s'%'Hello Kitty')
输出:
字符串: Hello Kitty
右对齐: Hello Kitty
左对齐: Hello Kitty
截取串: He
使⽤format
相对基本格式化输出采⽤‘%’的⽅法,format()功能更强⼤,该函数把字符串当成⼀个模板,通过传⼊的参数进⾏格式化,并且使⽤⼤括号‘{}’作为特殊字符代替‘%’
位置匹配
{}
{1}、{2}:带数字编号可以条换顺序
{a}、{key}:带关键字
print('{} {}'.format('Hello','Kitty'))
print('{1} {0}'.format('Hello','Kitty'))
输出:
Hello Kitty
Kitty Hello
格式转换
‘b’ - ⼆进制。将数字以2为基数进⾏输出。
‘c’ - 字符。在打印之前将整数转换成对应的Unicode字符串。
‘d’ - ⼗进制整数。将数字以10为基数进⾏输出。
‘o’ - ⼋进制。将数字以8为基数进⾏输出。
‘x’ - ⼗六进制。将数字以16为基数进⾏输出,9以上的位数⽤⼩写字母。
‘e’ - 幂符号。⽤科学计数法打印数字。⽤’e’表⽰幂。
‘g’ - ⼀般格式。将数值以fixed-point格式输出。当数值特别⼤的时候,⽤幂形式打印。
‘n’ - 数字。当值为整数时和’d’相同,值为浮点数时和’g’相同。不同的是它会根据区域设置插⼊数字分隔符。
‘%’ - 百分数。将数值乘以100然后以fixed-point(‘f’)格式打印,值后⾯会有⼀个百分号。
print('{:b}'.format(3))
print('{:%}'.format(0.5))
输出:
11
50.000000%

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。