摘要:刷題繼續昨天和大家分享了前道題,今天繼續來刷解法一解法一解法二解法三解法一解法二解法一解法一解法二解法一解法二解法一解法二解法一解法二解法一解法二解法一源代碼下載這十道題的代碼在我的上,如果大家想看一下每道題的輸出結果,可以點擊
刷題繼續
昨天和大家分享了前10道題,今天繼續來刷21~30
Question 21:A robot moves in a plane starting from the original point (0,0). The robot can move toward UP, DOWN, LEFT and RIGHT with a given steps. The trace of robot movement is shown as the following:
UP 5 DOWN 3 LEFT 3 RIGHT 2
The numbers after the direction are steps. Please write a program to compute the distance from current position after a sequence of movement and original point. If the distance is a float, then just print the nearest integer.
Example:
If the following tuples are given as input to the program:
UP 5 DOWN 3 LEFT 3 RIGHT 2
Then, the output of the program should be:
2
import math x,y = 0,0 while True: s = input().split() if not s: break if s[0]=="UP": # s[0] indicates command x-=int(s[1]) # s[1] indicates unit of move if s[0]=="DOWN": x+=int(s[1]) if s[0]=="LEFT": y-=int(s[1]) if s[0]=="RIGHT": y+=int(s[1]) # N**P means N^P dist = round(math.sqrt(x**2 + y**2)) # euclidean distance = square root of (x^2+y^2) and rounding it to nearest integer print(dist)Question 22:
Write a program to compute the frequency of the words from the input. The output should output after sorting the key alphanumerically.Suppose the following input is supplied to the program:
New to Python or choosing between Python 2 and Python 3? Read Python 2 or Python 3.
Then, the output should be:
2:2 3.:1 3?:1 New:1 Python:5 Read:1 and:1 between:1 choosing:1 or:2 to:1
ss = input().split() word = sorted(set(ss)) # split words are stored and sorted as a set for i in word: print("{0}:{1}".format(i,ss.count(i)))解法二
ss = input().split() dict = {} for i in ss: i = dict.setdefault(i,ss.count(i)) dict = sorted(dict.items()) for i in dict: print("%s:%d"%(i[0],i[1]))解法三
from collections import Counter ss = input().split() ss = Counter(ss) # returns key & frequency as a dictionary ss = sorted(ss.items()) # returns as a tuple list for i in ss: print("%s:%d"%(i[0],i[1]))Question 23:
Write a method which can calculate square value of number解法一
def square(num): return num ** 2 print(square(2)) print(square(3))解法二
n=int(input()) print(n**2)Question 24:
Python has many built-in functions, and if you do not know how to use it, you can read document online or find some books. But Python has a built-in document function for every built-in functions.解法一Please write a program to print some Python built-in functions documents, such as abs(), int(), raw_input()
And add document for your own function
print (abs.__doc__) print (int.__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__)Question 25:
Define a class, which have a class parameter and have a same instance parameter.解法一
class Car: name = "Car" def __init__(self,name = None): self.name = name honda=Car("Honda") print("%s name is %s"%(Car.name,honda.name)) toyota=Car() toyota.name="Toyota" print("%s name is %s"%(Car.name,toyota.name))解法二
class Person: # Define the class parameter "name" name = "Person" def __init__(self, name = None): # self.name is the instance parameter self.name = name jeffrey = Person("Jeffrey") print ("{0} name is {1}".format(Person.name, jeffrey.name)) nico = Person() nico.name = "Nico" print (f"{Person.name} name is {nico.name}")Question 26:
Define a function which can compute the sum of two numbers.解法一
sum = lambda n1,n2 : n1 + n2 # here lambda is use to define little function as sum print(sum(1,2))解法二
def SumFunction(number1, number2): return number1 + number2 print SumFunction(1,2)Question 27:
Define a function that can convert a integer into a string and print it in console.解法一
def printValue(n): print (str(n)) printValue(3)解法二
conv = lambda x : str(x) n = conv(10) print(n) print(type(n))Question 28:
Define a function that can receive two integer numbers in string form and compute their sum and then print it in console.解法一
def printValue(s1,s2): print int(s1) + int(s2) printValue("3","4") #7解法二
sum = lambda s1,s2 : int(s1) + int(s2) print(sum("10","45")) # 55Question 29:
Define a function that can accept two strings as input and concatenate them and then print it in console.解法一
def printValue(s1,s2): print s1 + s2 printValue("3","4") #34解法二
sum = lambda s1,s2 : s1 + s2 print(sum("10","45")) # 1045Question 30:
Define a function that can accept two strings as input and print the string with maximum length in console. If two strings have the same length, then the function should print all strings line by line.解法一
def printVal(s1,s2): len1 = len(s1) len2 = len(s2) if len1 > len2: print(s1) elif len1 < len2: print(s2) else: print(s1) print(s2) s1,s2=input().split() printVal(s1,s2)源代碼下載
這十道題的代碼在我的github上,如果大家想看一下每道題的輸出結果,可以點擊以下鏈接下載:
Python 21-30題
我的運行環境Python 3.6+,如果你用的是Python 2.7版本,絕大多數不同就體現在以下3點:
raw_input()在Python3中是input()
print需要加括號
fstring可以換成.format(),或者%s,%d
謝謝大家,我們下期見!希望各位朋友不要吝嗇,把每道題的更高效的解法寫在評論里,我們一起進步!??!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/43955.html
摘要:刷題繼續昨天和大家分享了題,今天繼續來刷題解法一解法二解法一解法二解法一解法一解法一解法一解法一解法一解法二解法一解法二解法一源代碼下載這十道題的代碼在我的上,如果大家想看一下每道題的輸出結果,可以點擊以下鏈接下載題我的運行環境如果你 刷題繼續 昨天和大家分享了21-30題,今天繼續來刷31~40題 Question 31: Define a function which can pr...
摘要:刷題繼續大家好,我又回來了,昨天和大家分享了題,今天繼續來看題解法一解法二解法一解法二解法一解法二解法一解法二解法一解法一解法一解法一解法一解法一源代碼下載這十道題的代碼在我的上,如果大家想看一下每道題的輸出結果,可以點擊以下鏈接下載題 刷題繼續 大家好,我又回來了,昨天和大家分享了31-40題,今天繼續來看41~50題 Question 41: Write a program whi...
摘要:一套全面的練習,大家智慧的結晶大家好,好久不見,我最近在上發現了一個好東西,是關于夯實基礎的道題,原作者是在的時候創建的,閑來無事,非常適合像我一樣的小白來練習對于每一道題,解法都不唯一,我在這里僅僅是拋磚引玉,希望可以集合大家的智慧,如果 一套全面的練習,大家智慧的結晶 大家好,好久不見,我最近在Github上發現了一個好東西,是關于夯實Python基礎的100道題,原作者是在Pyt...
摘要:笨辦法學第版結構非常簡單,共包括個習題,其中個覆蓋了輸入輸出變量和函數三個主題,另外個覆蓋了一些比較高級的話題,如條件判斷循環類和對象代碼測試及項目的實現等。最后只想說,學習不會辜負任何人,笨辦法學 內容簡介 《笨辦法學Python(第3版)》是一本Python入門書籍,適合對計...
閱讀 1311·2023-04-26 03:05
閱讀 760·2021-10-19 11:43
閱讀 3206·2021-09-26 09:55
閱讀 825·2019-08-30 15:56
閱讀 979·2019-08-30 15:44
閱讀 1228·2019-08-30 15:44
閱讀 2717·2019-08-30 14:23
閱讀 3233·2019-08-30 13:13