提示:会有格式上的错误!
问题21
3级
问题:
机器人从原始点(0,0)开始在平面上移动。 机器人可以按照给定的步骤向上,下,左和右移动。 机器人运动的轨迹如下图所示:
上5
下3
左3
右2
方向后的数字为步长。 请编写一个程序,以计算一系列移动和原始点之后与当前位置的距离。 如果距离是浮点数,则只需打印最接近的整数即可。
例子:
如果给出以下元组作为程序的输入:
上5
下3
左3
右2
然后,程序的输出应为:
2个
提示:
如果将输入数据提供给问题,则应假定它是控制台输入。
解决方案:
import math
pos = [0,0]
while True:
s = raw_input()
if not s:
break
movement = s.split(" ")
direction = movement[0]
steps = int(movement[1])
if direction=="UP":
pos[0]+=steps
elif direction=="DOWN":
pos[0]-=steps
elif direction=="LEFT":
pos[1]-=steps
elif direction=="RIGHT":
pos[1]+=steps
else:
pass
print int(round(math.sqrt(pos[1]**2+pos[0]**2)))
#----------------------------------------#
问题22
3级
问题:
编写一个程序来计算输入中单词的频率。 在按字母数字顺序对键进行排序后,应输出输出。
假设将以下输入提供给程序:
是Python的新手,还是在Python 2和Python 3之间选择? 阅读Python 2或Python 3。
然后,输出应为:
2:2
3 :: 1
3?:1
新增:1个
的Python:5
阅读:1
和:1
之间:1
选择:1
或:2
至:1
提示
如果将输入数据提供给问题,则应假定它是控制台输入。
解决方案:
freq = {} # frequency of words in text
line = raw_input()
for word in line.split():
freq[word] = freq.get(word,0)+1
words = freq.keys()
words.sort()
for w in words:
print "%s:%d" % (w,freq[w])
#----------------------------------------#
问题23
1级
问题:
编写一种可以计算数字平方值的方法
提示:
使用**运算符
解决方案:
def square(num):
return num ** 2
print square(2)
print square(3)
#----------------------------------------#
问题24
1级
问题:
Python具有许多内置函数,如果您不知道如何使用它,则可以在线阅读文档或查找一些书籍。 但是Python对于每个内置函数都有一个内置文档函数。
请编写程序以打印一些Python内置函数文档,例如abs(),int(),raw_input()
并添加您自己的功能的文档
提示:
内置文档方法是__doc__
解决方案:
print abs.__doc__
print int.__doc__
print raw_input.__doc__
def square(num):
'''Return the square value of the input number.
The input number must be integer.
'''
return num ** 2
print square(2)
print square.__doc__
问题25
1级
问题:
定义一个类,该类具有一个类参数并且具有相同的实例参数。
提示:
定义实例参数,需要将其添加到__init__方法中
您可以使用构造参数初始化对象或稍后设置值
解决方案:
class Person:
#定义类参数“名称”
name = "Person"
def __init__(self, name = None):
#self.name是实例参数
self.name = name
jeffrey = Person("Jeffrey")
print "%s name is %s" % (Person.name, jeffrey.name)
nico = Person()
nico.name = "Nico"
print "%s name is %s" % (Person.name, nico.name)
#----------------------------------------#
问题:
定义一个可以计算两个数字之和的函数。
提示:
定义一个以两个数字作为参数的函数。 您可以在函数中计算总和并返回值。
def SumFunction(number1, number2):
return number1+number2
print SumFunction(1,2)
#----------------------------------------#
问题:
定义一个可以将整数转换为字符串并在控制台中打印的函数。
提示:
使用str()将数字转换为字符串。
解决方案
def printValue(n):
print str(n)
printValue(3)
#----------------------------------------#
问题:
定义一个可以将整数转换为字符串并在控制台中打印的函数。
提示:
使用str()将数字转换为字符串。
解决方案
def printValue(n):
print str(n)
printValue(3)
#----------------------------------------#
问题:
定义一个函数,该函数可以接收两个字符串形式的整数并计算它们的总和,然后在控制台中将其打印出来。
提示:
使用int()将字符串转换为整数。
解决方案
def printValue(s1,s2):
print int(s1)+int(s2)
printValue("3","4") #7
问题:
定义一个函数,该函数可以接受两个字符串作为输入并将其连接起来,然后在控制台中将其打印出来。
提示:
使用+连接字符串
解决方案
def printValue(s1,s2):
print s1+s2
printValue("3","4") #34
#----------------------------------------#
问题:
定义一个函数,该函数可以接受两个字符串作为输入,并在控制台中打印最大长度的字符串。 如果两个字符串的长度相同,则该函数应逐行打印所有字符串。
提示:
使用len()函数获取字符串的长度
解决方案
def printValue(s1,s2):
len1 = len(s1)
len2 = len(s2)
if len1>len2:
print s1
elif len2>len1:
print s2
else:
print s1
print s2
printValue("one","three")
#----------------------------------------#
问题:
定义一个可以接受整数作为输入的函数,如果数字是偶数,则打印“它是偶数”,否则打印“它是奇数”。
提示:
使用%运算符检查数字是偶数还是奇数。
解决方案
def checkValue(n):
if n%2 == 0:
print "It is an even number"
else:
print "It is an odd number"
checkValue(7)
#----------------------------------------#
问题:
定义一个可以打印字典的函数,其中键是1到3之间的数字(都包括在内),值是键的平方。
提示:
使用dict [key] = value模式将条目放入字典中。
使用**运算符可获取数字的幂。
解决方案
def printDict():
d=dict()
d[1]=1
d[2]=2**2
d[3]=3**2
print d
printDict()
#----------------------------------------#
问题:
定义一个可以打印字典的函数,其中键是1到20之间的数字(都包括在内),值是键的平方。
提示:
使用dict [key] = value模式将条目放入字典中。
使用**运算符可获取数字的幂。
使用range()进行循环。
解决方案
def printDict():
d=dict()
for i in range(1,21):
d[i]=i**2
print d
printDict()
#----------------------------------------#
问题:
定义一个可以生成字典的函数,其中键是1到20之间的数字(均包括在内),值是键的平方。 该功能应仅打印值。
提示:
使用dict [key] = value模式将条目放入字典中。
使用**运算符可获取数字的幂。
使用range()进行循环。
使用keys()迭代字典中的键。 我们也可以使用item()来获取键/值对。
解决方案
def printDict():
d=dict()
for i in range(1,21):
d[i]=i**2
for (k,v) in d.items():
print v
printDict()
#----------------------------------------#
问题:
定义一个可以生成字典的函数,其中键是1到20之间的数字(均包括在内),值是键的平方。 该功能应仅打印键。
提示:
使用dict [key] = value模式将条目放入字典中。
使用**运算符可获取数字的幂。
使用range()进行循环。
使用keys()迭代字典中的键。 我们也可以使用item()来获取键/值对。
解决方案
def printDict():
d=dict()
for i in range(1,21):
d[i]=i**2
for k in d.keys():
print k
printDict()
#----------------------------------------#
问题:
定义一个函数,该函数可以生成和打印一个列表,其中值是介于1到20之间的数字的平方(均包括在内)。
提示:
使用**运算符可获取数字的幂。
使用range()进行循环。
使用list.append()将值添加到列表中。
解决方案
def printList():
li=list()
for i in range(1,21):
li.append(i**2)
print li
printList()
#----------------------------------------#
问题:
定义一个函数,该函数可以生成一个列表,其中值是介于1到20之间的数字的平方(均包括在内)。 然后,该功能需要打印列表中的前5个元素。
提示:
使用**运算符可获取数字的幂。
使用range()进行循环。
使用list.append()将值添加到列表中。
使用[n1:n2]分割列表
解决方案
def printList():
li=list()
for i in range(1,21):
li.append(i**2)
print li[:5]
printList()
#----------------------------------------#
问题:
定义一个函数,该函数可以生成一个列表,其中值是介于1到20之间的数字的平方(均包括在内)。 然后,该功能需要打印列表中的最后5个元素。
提示:
使用**运算符可获取数字的幂。
使用range()进行循环。
使用list.append()将值添加到列表中。
使用[n1:n2]分割列表
解决方案
def printList():
li=list()
for i in range(1,21):
li.append(i**2)
print li[-5:]
printList()
#----------------------------------------#
问题:
定义一个函数,该函数可以生成一个列表,其中值是介于1到20之间的数字的平方(均包括在内)。 然后,该函数需要打印列表中前5个元素以外的所有值。
提示:
使用**运算符可获取数字的幂。
使用range()进行循环。
使用list.append()将值添加到列表中。
使用[n1:n2]分割列表
解决方案
def printList():
li=list()
for i in range(1,21):
li.append(i**2)
print li[5:]
printList()
#----------------------------------------#
问题:42
定义一个函数,该函数可以生成和打印一个元组,其中值是介于1到20之间的数字的平方(均包括在内)。
提示:
使用**运算符可获取数字的幂。
使用range()进行循环。
使用list.append()将值添加到列表中。
使用tuple()从列表中获取一个元组。
解决方案
def printTuple():
li=list()
for i in range(1,21):
li.append(i**2)
print tuple(li)
printTuple()
持续更新