python的输入来源包括啥_python读取键盘输入

本文介绍了如何使用Python的不同方法从键盘读取用户输入,包括raw_input(), input()以及sys.stdin readline(),并展示了如何计算两点坐标的直线斜率和截距。同时,还探讨了如何处理多行输入及去重问题。

python读取键盘输入

一、类型

raw_input()/input() (Python3中为input())返回的结果不包含末尾的换行符,而sys.stdin.readline()返回的结果包含了末尾的换行符\n

法一:

raw_input()

法二:

input()

法三:

sys.stdin()

1. for line in sys.stdin:

mi2EZ3.gif

importsys

sys.stdout.write('根据两点坐标计算直线斜率k,截距b:\n')for line insys.stdin:if line == '\n': breakx1, y1, x2, y2= (float(x) for x inline.split())

k= (y2 - y1) / (x2 -x1)

b= y1 - k *x1

sys.stdout.write('斜率:{},截距:{}\n'.format(k, b))

mi2EZ3.gif

2. while True:

line = sys.stdin.readline()

mi2EZ3.gif

importsys

sys.stdout.write('根据两点坐标计算直线斜率k,截距b:\n')whileTrue:

line=sys.stdin.readline()if line == '\n': breakx1, y1, x2, y2= (float(x) for x inline.split())

k= (y2 - y1) / (x2 -x1)

b= y1 - k *x1

sys.stdout.write('斜率:{},截距:{}\n'.format(k, b))

mi2EZ3.gif

3. while True:

line = input()

mi2EZ3.gif

print('根据两点坐标计算直线斜率k,截距b:')whileTrue:

line=input()if line == '\n': breakx1, y1, x2, y2= (float(x) for x inline.split())

k= (y2 - y1) / (x2 -x1)

b= y1 - k *x1print('斜率:{},截距:{}'.format(k, b))

mi2EZ3.gif

本文后半部分转自罗兵博客园博客,原文链接:http://www.cnblogs.com/hhh5460/p/5473494.html,如需转载请自行联系原作者

二、读取多行数据

1.

import sys

for line in sys.stdin:

for value in line.split()

print value

用这段代码的时候,输入一行后就会打印出这一行数据,不能满足我想一次输入多行的要求,

2.

lst = []

print(‘请输入数据,直接回车结束:’)

while True:

temp = input()

if temp == ”:

break

lst.append([int(i) for i in temp.split(‘ ‘)])

for i in lst:

print(i)

例如:

下厨房,求所需材料总数

题目描述

牛牛想尝试一些新的料理,每个料理需要一些不同的材料,问完成所有的料理需要准备多少种不同的材料。

输入描述:

每个输入包含 1 个测试用例。每个测试用例的第 i 行,表示完成第 i 件料理需要哪些材料,各个材料用空格隔开,输入只包含大写英文字母和空格,输入文件不超过 50 行,每一行不超过 50 个字符。

输出描述:

输出一行一个数字表示完成所有料理需要多少种不同的材料。

示例1

输入

BUTTER FLOUR

HONEY FLOUR EGG

输出

4

import sys

a=[]

for line in sys.stdin:

if line.strip() == '':

break

a.extend(line.split())

print len(set(a))

set()可以去除数组中的重复元素

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值