Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Python Expert

Coding examples

Following are some  attempts at defining a function isSubset,  which  takes  two  arguments, a and  b, and  returns True if a is a subset  of b, assuming that  a and  b are represented as lists of elements.

Here is one answer to the problem which  is in the Pythonic functional style.

 

def isSubset(a, b):

return reduce(operator.and_, [x in b for x in a])

 

This is short  and  direct.   The expression x in b tests  to see if the  item  x is in the  structure b.  So, [x in b for x in a] is a list of Booleans,  one for each components in a, indicating whether that component is in b. Finally,  we replace that  list using  the and operator11 , which  will have  the value True if all of the elements of the list are False, and True otherwise.

An alternative is to do it recursively:

 

def isSubset(a, b):

if a == []:

return True

else:

return a[0] in b and isSubset(a[1:], b)

 

The base case of the recursion is that a is the empty list; in that type, it's define that a is a subset  of b. Otherwise, we may give  our answer in terms  of isSubset,  but asking  a simpler question.  So, we call that a is a subset  of b if the ?rst element of a is a member of b and the set of rest of the elements of a is a subset  of b.

 

We can go even farther in the recursive solution for compressing:

def isSubset(a, b):

return a == None or a[0] in b and isSubset(a[1:], b)

 

Here, we are taking  advantage of the fact that in Python (and most other languages), the or Boolean operator has the "early  out"  charters tics. That is, if we are calculating e1 or e2, we start  by evaluating e1, and  if it is True,  then  we know  the  output  of the  expression has  to be True,  and  therefore we give without calculating e2.  So, or can perform as a kind  of conditional operator. Some person would search this program too abstruse (shorter isn't always better),  and  some  would take  it very beautiful.

 

Here is another good solution, this time in the imperative style:

 

def isSubset(a, b):

for x in a:

if not x in b:

return False return True

 

It works  by going through the component in a, in order.  If any of those components is not in b, then we can immediately quit and give False. Otherwise, if we have taken through all of the components in a, and each of them  has been in b, then a really is a subset  of b and we may give True.

Here is another imperative program:

 

def isSubset(a, b): result = True for x in a:

result = result and x in b return result

 

This procedure starts  by initializing a result  to True,  which  is the  check component for and (it plays  the same  role as 0 for add).  Then  it tends all the way  through the structure a, and  ands the last result  with  x in b. This calculation is as the computation done  in the functional version, but rather than  preparing the entire  list of Booleans  and  then  replacing, we inter leave the individual membership tests with combining them  into a result.

 

Python, Programming

  • Category:- Python
  • Reference No.:- M9506011

Have any Question?


Related Questions in Python

In this programming assignment you will write a client

In this programming assignment, you will write a client pingprogram in Python. Your client will send a simple ping message to a server, receive a correspondingpong message back from the server, and determine the delay be ...

Sieve of eratosthenes in pythonthe goal is to find all the

Sieve of Eratosthenes (in Python) The goal is to find all the prime numbers less than or equal to some natural number maxn. We have a list that tells us if any of the numbers 0..maxn are "marked". It can be an array of b ...

Environment setupthe first mini project will be based on

Environment Setup The first mini project will be based on Ladder Logic programming. We will be using Schneider Electric's IDE called SoMachine Basic to do the programming. The latest ver- sion of SoMachine Basic for Wind ...

Question a software company sells a package that retails

Question : A software company sells a package that retails for $99. Quantity discounts are given according to the following table: Quantity Discount 10 - 19 20% 20 - 49 30% 50 - 99 40% 100 or more 50% Write a program usi ...

Lab assignment -background - we have discussed in detail

Lab Assignment - Background - We have discussed, in detail, the function of Stacks and Queues and how they are specifically implemented in Python. To get a better understanding of the utility of these data structures, we ...

Project reconnaissance and attack on ics

Project: Reconnaissance and Attack on ICS NetworksEnvironment Setup The second mini project will be based on Industrial Network Protocols, specifically the Modbus protocol. Please follow the instructions carefully to set ...

Question research pythons dictionary data type dictdiscuss

Question : Research Python's dictionary data type (dict). Discuss its interface and usage. Include examples. Discuss practical applications of dictionaries.

Homework -this homework will have both a short written and

Homework - This homework will have, both a short written and coding assignment. The problems that are supposed to be written are clearly marked. 1) (Written) Make heuristics Describe two heuristics for the slide problem ...

Foundations of programming assignment - feduni bankingthis

Foundations of Programming Assignment - FedUni Banking This assignment will test your skills in designing and programming applications to specification. Assignment Overview - You are tasked with creating an application t ...

Question write a python program with a graphical user

Question: Write a python program with a graphical user interface that will allow a user to create a custom pizza which they wish to order. At minimum, the user should be able to choose the size of the pizza, the type of ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As