Presentation is loading. Please wait.

Presentation is loading. Please wait.

Input and Output CMSC 120: Visualizing Information Lecture 4/10.

Similar presentations


Presentation on theme: "Input and Output CMSC 120: Visualizing Information Lecture 4/10."— Presentation transcript:

1 Input and Output CMSC 120: Visualizing Information Lecture 4/10

2 Computing Input Data Store Manipulate Data Output Data InputMemoryOutput CPU Types of Data Numbers Logic Objects Sequences Strings Types of Data Numbers Logic Objects Sequences Strings Input - Output Dynamic (User) Stored (Text File) Input - Output Dynamic (User) Stored (Text File)

3 Text string data type Sequence of characters 'my string'

4 Basic String Operations >>> 'spam' + 'eggs' 'spameggs' >>> 3 * 'spam' 'spamspamspam ' >>> (3 * 'spam') + (5 * 'eggs') 'spamspamspameggseggseggseggseggs' >>> len('spam') 4 >>> for ch in 'Spam!' print ch S p a m !

5 Basic String Operations >>> breakfast = 'SpamAndEggs' >>> breakfast[0] >>> breakfast[4:7] >>> breakfast[-2] >>> breakfast[:] >>> breakfast[:4] >>> breakfast[4:]

6 Basic String Operations OperatorMeaning + Concatenation * Repetition [] Indexing [:] Slice len( ) Length for in Iteration through characters

7 String Representation Numbers: Stored in binary notation Computer CPU circuitry designed to manipulate 0s and 1s Text: Encoded as numbers ASCII (American Standard): A-Z = 65-90 a-z = 97-122 Unicode

8 String Representation Switching from character to encoded ordinal >>> ord('a') 97 >>> ord('A') 65 >>> chr(97) 97

9 Interactive Input and Output >>> fname = input('Enter name: ') Enter name: 'Emily' >>> print 'Hello', fname Hello Emily

10 Raw Input >>> fname = input('Enter name: ') Enter name: Emily Traceback (most recent call last): File " ", line 1, in input('Enter name: ') File " ", line 1, in NameError: name 'Emily' is not defined

11 raw_input >>> fname = raw_input('Enter name: ') Enter name: Emily raw_input Exactly like input, except... it does not evaluate the expression input is treated like a string of text >>> print 'Hello', fname Hello Emily

12 raw_input >>> fname = raw_input('Enter name: ') Enter name: 5 >>> fname '5' >>> fname = raw_input('Enter name: ') Enter name: Emily Allen fname 'Emily Allen' String Processing: translating raw input strings into appropriate types of data

13 Simple String Processing # generate a user name def main(): first = raw_input('Enter first name: ') last = raw_input('Enter last name: ') # concatenate first initial with # 7 characters of the last name uname = first[0] + last[:7] print uname main() emily greenfest egreenfe

14 Simple String Processing # generate a user name def main(): first = raw_input('Enter first name: ') last = raw_input('Enter last name: ') # concatenate first initial with # 7 characters of the last name uname = first[0] + last[:7] print User name is: uname main() Enter first name: emily Enter last name: greenfest User name is: egreenfe

15 Simple String Processing Strings are objects! >>> myName = raw_input('Enter whole name: ') Enter whole name: Emily Greenfest-Allen >>> myName 'Emily Greenfest-Allen' >>> myName.split() ['Emily', 'Greenfest-Allen'] >>> myName.split('-' ) ['Emily Greenfest', 'Allen']

16 Simple String Processing >>> s = 'Spam and Eggs' >>> s.capitalize() 'Spam and eggs' >>> s.capwords() 'Spam And Eggs' >>> s.upper() 'SPAM AND EGGS' >>> s.lower () 'spam and eggs'

17 Simple String Processing >>> s = 'Spam and Eggs' >>> s.replace('and','or') 'Spam or Eggs' >>> s.count('a') 2 >>> s.find('E') 9

18 Input/Output String Maninpulation

19 Date Conversion User enters a date in mm/dd/yyyy format ( dateStr ) Split dateStr into month, day, and year strings Convert the month string into a month number Use the month to look up the month name Create a new date string in form Month Day, Year Output new date string

20 Date Conversion # User enters a date in mm/dd/yyyy format (dateStr) dateStr = raw_input('Enter date (mm/dd/ yyyy): ') # Split dateStr into month, day, and year strings monthStr, dayStr, yearStr = dateStr.split('/') Enter date (mm/dd/ yyyy): 05/07/1977 >>> print monthStr, dayStr, yearStr 05 07 1977 monthStr '05'

21 String Conversion >>> int('5') 5 >>> float('5') 5.0 >>> string(2.8) '2.8' >>> eval('5 + 2') 7

22 Date Conversion # convert month string to month name months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] monthName = months[int(monthStr) – 1] # output in form Month Day, Year print monthName, dayStr + ',', yearStr Enter date (mm/dd/ yyyy): 05/07/1977 May 7, 1977


Download ppt "Input and Output CMSC 120: Visualizing Information Lecture 4/10."

Similar presentations


Ads by Google