1 / 26

An Introduction to Python – Part II

An Introduction to Python – Part II. Dr. Nancy Warter-Perez. Overview. Data Organization Lists Tuples Dictionaries Input/Output Programming Workshop #1 If tests Loops for while Example amino acid search program Programming Workshop #2. Strings. Enclosed in single or double quotes

xaria
Download Presentation

An Introduction to Python – Part II

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An Introduction to Python – Part II Dr. Nancy Warter-Perez

  2. Overview • Data Organization • Lists • Tuples • Dictionaries • Input/Output • Programming Workshop #1 • If tests • Loops • for • while • Example amino acid search program • Programming Workshop #2 Introduction to Python – Part II

  3. Strings • Enclosed in single or double quotes Ex: ‘Hello!’ , “Hello!”, “3.5”, “a”, ‘a’ • Sequence of characters:mystring=“hello world!” mystring[0] -> “h” mystring[1] -> “e” mystring[2] -> “l” mystring[-1] -> “!” -1 is last, -2 next to last, etc… Introduction to Python – Part II

  4. String operations Introduction to Python – Part II

  5. Strings (2) • slicing:mystring = “spoon!” mystring[2:] -> “oon!”mystring[:3] -> “spo”#note last element is never included!mystring[1:3]-> “po” • Many useful built-in functions • mystring.upper() -> “SPOON!” • mystring.replace(‘o’, ‘O’) -> “spOOn!” Introduction to Python – Part II

  6. “blanks” Values to put in blanks Strings (3) • “%” operator:sort of “fill in the blanks” operation:mystring=“%s has %d marbles” % (“John”,35) mystring -> “John has 35 marbles” • %s replace with string • %d,%i replace with integer • %f replace with float Introduction to Python – Part II

  7. Lists Introduction to Python – Part II

  8. Error! Tuples • Tuples – sequence of valueslike lists, but cannot be changed after it is createdmytuple=(1,”a”,”bc”,3,87.2)mytuple[2] -> “bc” mytuple[1]=“3” • Used when you want to pass several variables around at once Introduction to Python – Part II

  9. Dictionaries • Dictionaries – map ‘keys’ to ‘values’ • like lists, but indices can be of any type • Also, keys are in no particular order • Eg:mydict={‘b’:3, ’a’:4, 75:2.85}mydict[‘b’] -> 3mydict[75] -> 2.85mydict[‘a’] -> 4 Introduction to Python – Part II

  10. Dictionaries Introduction to Python – Part II

  11. Dictionaries – other considerations • Slicing not allowed • Referencing invalid key is an error: >>> mydict={8.5: 8, 'a': 75, 'r': 1, 'g': 2, 'y': 3.5, 9: 'nine'} >>> mydict["red"] Traceback (most recent call last): File "<interactive input>", line 1, in ? KeyError: 'red‘ Use mydict.get(“red”) instead, it returns None if key is not found Introduction to Python – Part II

  12. Function raw_input() designed to read a line of input from the user 1 optional argument: string to prompt user If int or float desired, simply convert string: int(mystring)->convert to int (if possible) float(mystring)->convert to float (if possible) Input/Output >>> mystr=raw_input("Enter a string:") Enter a string:Hello World! >>> mystr 'Hello World!' Introduction to Python – Part II

  13. Function print Prints each argument, followed by space After all arguments, prints newline Put comma after last arg to prevent newline “add” strings to avoid spaces print “a”,”b”,”c” a b c print “a”,”b”,”c”, a b c print “a”+”b”+”c” abc Newline! No Newline! No spaces! Output Introduction to Python – Part II

  14. Output Example >>> print"hello","world";print"hello","again" hello world hello again >>> print"hello","world",;print "hello","again" hello world hello again >>> print"hello %s world" % "cold and cruel" hello cold and cruel world >>> print"hello","cold"+ " " + "and","cruel","world" hello cold and cruel world Introduction to Python – Part II

  15. Programming Workshop #1 • Write a Python program to compute the hydrophobicity of an amino acid • Program will prompt the user for an amino acid and will display the hydrophobicity Introduction to Python – Part II

  16. Solution to Programming Workshop 1 • Write a Python program to compute the hydrophobicity of an amino acid # Program to compute the hydrophobicity of an amino acid # (solution only includes first 3 amino acids) # Written by: Prof. Warter-Perez # Date created: April 15, 2004 # Last modified: hydro = {"A":1.8,"C":2.5,"D":-3.5} aa = raw_input ("Please enter amino acid: ") print "The hydrophobicity of %s is %f."% (aa, hydro[aa]) Introduction to Python – Part II

  17. Make solution case insensitive # Program to compute the hydrophobicity of an amino acid # Written by: Prof. Warter-Perez # Date created: April 15, 2004 # Last modified: April 20, 2004 - made script case insensitive for # amino acids hydro = {"A":1.8,"C":2.5,"D":-3.5} aa = raw_input ("Please enter amino acid: ") aa = aa.upper() print "The hydrophobicity of %s is %f."% (aa, hydro[aa]) Introduction to Python – Part II

  18. Relational operators == equal != not equal > greater than >= greater than or equal < less than <= less than or equal Logical operators and and or or not not Python Basics – Relational and Logical Operators Introduction to Python – Part II

  19. ifexpression: action Example: a1 = 'A‘; a2 = 'C'; match = 0; if (a1 == a2) : match+=1; if Statement Introduction to Python – Part II

  20. ifexpression: action 1 elif expression: action 2else : action 3 Example: a1 = 'A‘; a2 = 'C'; match = 0; gap = 0; if (a1 == a2) : match+=1; elif (a1 > a2): else: gap+=1; if-elif-else Statement Introduction to Python – Part II

  21. for var in list: action Sets var to each item in list and performs action range() function generates lists of numbers: range (5) -> [0,1,2,3,4] Example mylist=[“hello”,”hi”,”hey”,”!”]; for i in mylist: print i for Statement Iteration 1 prints: hello Iteration 2 prints: hi Iteration 3 prints: hey Iteration 4 prints: ! Introduction to Python – Part II

  22. while expression: action Example x = 0; while x != 3: x = x + 1 while Statement / 2 Infinite loop! Iteration 1: x=0+1=1 Iteration 2: x=1+1=2 Iteration 3: x=2+1=3 Iteration 4: don’t exec Introduction to Python – Part II

  23. Example: Amino Acid Search • Write a program to count the number of occurrences of an amino acid in a sequence. • The program should prompt the user for • A sequence of amino acids (seq) • The search amino acid (aa) • The program should display the number of times the search amino acid (aa) occurred in the sequence (seq) Introduction to Python – Part II

  24. Example: Amino Acid Search (2) #this program will calculate the number of occurrences of an amino acid in a #sequence #by Bryce Ready done=0 while (not done): sequence=raw_input("Please enter a sequence:"); aa=raw_input("Please enter the amino acid to look for:"); Introduction to Python – Part II

  25. Example: Amino Acid Search (3) #compute the number of occurrences using for loop cnt=0 for i in sequence: if i == aa: cnt+=1 if cnt == 1: print "%s occurs in that sequence once" % aa else: print "%s occurs in that sequence %d times" % (aa, cnt) answer=raw_input("try again? [yn]") if answer == "n" or answer == "N": done = 1 Introduction to Python – Part II

  26. Programming Workshop #2 • Write a sliding window program to compute the %GC in a sequence of nucleotides. • The program should prompt the user for • The DNA sequence • The window size (assume the window increment is 1) Introduction to Python – Part II

More Related