Lecture 4: Strings and documentation
|
|
- Myra Stokes
- 5 years ago
- Views:
Transcription
1 Lecture 4: Strings and documentation Introduction for Linguists (LT2102) Markus Forsberg SprΣakbanken University of Gothenburg September 17, 2010
2 FAQ: How do I get the highest grade on the course? You need a pass on the assignments. The exam decides you final grade. However, the assignments may influence your grade in the following ways: if you are close to pass or pass with distinction on the exam, then your work on the assignments may tip you one way or the other; if you work hard on the assignments, you shouldn t have a problem with the exam.
3 Comments Comments are used to inactivate code: # def function(): # print hello and, more importantly, to explain code: x = x+1 # increment x by 1 NO! x = x+1 # keep track of number of entries YES! num_of_entries = num_of_entries + 1 # self-documenting name
4 Module interface A Module interface gives an overview of what a module contains without giving any implementation details. # test.py def print_name(name): print name >>> import test >>> help(test)... >>> dir(test) [..., print_name ]
5 Adding documentation to the interface We use documentation strings to add documentation to the interface. A documentation string is just ordinary strings placed on specific places in the code. # test.py """This is a test module""" def print_name(name): """Doc-string for print_name""" print name >>help(test)
6 Escape characters We use escape characters to write special characters, such as newlines, and to cancel a character s formal meaning. >>> print "tab: \t newline: \n next line" tab: newline: next line >>> print "\" is an escaped double quote" " is an escaped double quotation >>> print \ is an escaped single quote is an escaped single quotation
7 Characters in a computer There are no characters in a computer, only numbers representing characters. Character encoding: what numbers are used to represent what characters. We have to know the character encoding of a text to be able to display a text properly.
8 ASCII table In the beginning was English (7 bits = 128 characters):
9 Extended ASCII table (latin1) And then they though of other languages close by and some symbols (8 bits = 256 characters):
10 Unicode And then they decided to go for every character. Every character gets a number. However, this mapping is abstract, not the actually character encoding.
11 Unicode character encodings Encodings to represent Unicode: UTF-8, UTF-16, UTF-32 UTF-8 is popular since are the same as ASCII (English text is valid). UTF-8 has started to replace Latin1 as the default encoding.
12 Unicode in Python Python has a special kind of strings called unicode strings. >> type(u this is a unicode string ) <type unicode > We use s.decode(encoding), to decode a string s encoded with ENCODING into a Python unicode string. We use s.encode(encoding) for doing the reverse.
13 Reading a file with Cyrillic characters >>> with open( cyrillic.txt ) as f:... s = f.read() >>> print s Письмо В июне 1935 года я на полгода вернулся в Англию с моего ранчо в Южной Америке. Жизнь... >>> print type(s), length:, len(s) <type str > length: 637 >>> print s.upper() # doesn t work Письмо В июне 1935 года я на полгода вернулся в Англию с моего ранчо в Южной Америке. Жизнь в Америке сложилась для нас непросто. Вместе со всеми мы страдали от последствий мирового кризиса. В Англии у меня был ряд дел, которые, как мне представлялось, требовали для своего разрешения моего личного присутствия. Моя жена осталась управлять нашим ранчо.
14 Reading a file with Cyrillic characters (cont.) >>> s_unicode = s.decode( UTF-8 ) >>> print type(s_unicode), length:, len(s_unicode) <type unicode > length: 353 >>> print s_unicode.upper() # works! ПИСЬМО В ИЮНЕ 1935 ГОДА Я НА ПОЛГОДА ВЕРНУЛСЯ В АНГЛИЮ С МОЕГО РАНЧО В ЮЖНОЙ АМЕРИКЕ. ЖИЗНЬ В АМЕРИКЕ СЛОЖИЛАСЬ ДЛЯ НАС НЕПРОСТО. ВМЕСТЕ СО ВСЕМИ МЫ СТРАДАЛИ ОТ ПОСЛЕДСТВИЙ МИРОВОГО КРИЗИСА. В АНГЛИИ У МЕНЯ БЫЛ РЯД ДЕЛ, КОТОРЫЕ, КАК МНЕ ПРЕДСТАВЛЯЛОСЬ, ТРЕБОВАЛИ ДЛЯ СВОЕГО РАЗРЕШЕНИЯ МОЕГО ЛИЧНОГО ПРИСУТСТВИЯ. МОЯ ЖЕНА ОСТАЛАСЬ УПРАВЛЯТЬ НАШИМ РАНЧО. >>> with open( cyrillic_upper.txt,mode= w ) as f:... f.write(s_unicode.upper())... Traceback (most recent call last): File "<stdin>", line 2, in <module> UnicodeEncodeError: ascii codec can t encode characters in position 0-5: ordinal not in range(128)
15 Reading a file with Cyrillic characters (cont.) >>> s_unicode_utf8 = s_unicode.upper().encode( UTF-8 ) >>> with open( cyrillic_upper.txt,mode= w ) as f:... f.write(s_unicode_utf8)... >>> $ cat rus_upper.txt ПИСЬМО В ИЮНЕ 1935 ГОДА Я НА ПОЛГОДА ВЕРНУЛСЯ В АНГЛИЮ С МОЕГО РАНЧО В ЮЖНОЙ АМЕРИКЕ. ЖИЗНЬ В АМЕРИКЕ СЛОЖИЛАСЬ ДЛЯ НАС НЕПРОСТО. ВМЕСТЕ СО ВСЕМИ МЫ СТРАДАЛИ ОТ ПОСЛЕДСТВИЙ МИРОВОГО КРИЗИСА. В АНГЛИИ У МЕНЯ БЫЛ РЯД ДЕЛ, КОТОРЫЕ, КАК МНЕ ПРЕДСТАВЛЯЛОСЬ, ТРЕБОВАЛИ ДЛЯ СВОЕГО РАЗРЕШЕНИЯ МОЕГО ЛИЧНОГО ПРИСУТСТВИЯ. МОЯ ЖЕНА ОСТАЛАСЬ УПРАВЛЯТЬ НАШИМ РАНЧО.
16 Reading and writing UTF-8 files def read_file_utf8(filename): with open(filename) as f: s = f.read() return s.decode( UTF-8 ) def write_file_utf8(filename,unicode_str): utf8_str = unicode_str.encode( UTF-8 ) with open(filename,mode= w ) as f: f.write(utf8_str)
17 codecs module import codecs def read_file_utf8(filename): with codecs.open(filename,encoding= utf-8 ) as f: s = f.read() return s def write_file_utf8(filename,unicode_str): with codecs.open(filename,mode= w,encoding= utf-8 ) as f: f.write(unicode_str)
18 String literals # unicode_ex.py alphabet_murders = u"письмо В июне 1935 года я на полгода вернулся\ в Англию с моего ранчо в Южной Америке." >>> import unicode_ex Traceback (most recent call last): File "<stdin>", line 1, in <module> File "unicode_ex.py", line 3 SyntaxError: Non-ASCII character \xd0 in file unicode_ex.py on line 3, but no encoding declared; see for details # unicode_ex.py # -*- coding: utf-8 -*- alphabet_murders = u"письмо В июне 1935 года я на полгода вернулся\ в Англию с моего ранчо в Южной Америке."
19 Solving a problem Top-down (divide-and-conquer) Start with the top function, and analyze what needs to be done by giving subtasks function names (without defining the functions first). Iteratively continue with the subtasks until you end up with trivial subtasks that you solve right away. Bottom-up Start with writing help functions that solves problems that you know must be solved in order to solve the whole problem. Use the help functions to build new functions until you have solved the whole problem.
20 What is a good solution? A problem of some complexity has a large number of solutions, so which one is to be preferred? Readability is extremely important. Scary example of the opposite: print filter(none,map(lambda y:y*reduce( lambda x,y:x*y!=0,map(lambda x,y=y:y%x, range(2,int(pow(y,0.5)+1))),1),range(2,1000))) Using the idioms of current programming language. Reasonable efficiency. Reusability.
21 Zen of Python >>> import this The Zen of Python, by Tim Peters Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Complex is better than complicated. Flat is better than nested. Sparse is better than dense. Readability counts. Special cases aren t special enough to break the rules. Although practicality beats purity. Errors should never pass silently. Unless explicitly silenced. In the face of ambiguity, refuse the temptation to guess. There should be one-- and preferably only one --obvious way to do it. Although that way may not be obvious at first unless you re Dutch. Now is better than never. Although never is often better than *right* now. If the implementation is hard to explain, it s a bad idea. If the implementation is easy to explain, it may be a good idea. Namespaces are one honking great idea -- let s do more of those!
22 Top-down: Downey, exercise 9.8 This question is based on a Puzzler that was broadcast on the radio program Car Talk: Give me a word with three consecutive double letters. I ll give you a couple of words that almost qualify, but don t. For example, the word committee, c-o-m-m-i-t-t-e-e. It would be great except for the i that sneaks in there. Or Mississippi: M-i-s-s-i-s-s-i-p-p-i. If you could take out those i s it would work. But there is a word that has three consecutive pairs of letters and to the best of my knowledge this may be the only word. Of course there are probably 500 more but I can only think of one. What is the word? Write a program to find it.
23 Solution def is_triple_duplicate(word): for i in range(0,len(word)-5): if (word[i] == word[i+1] and word[i+2] == word[i+3] and word[i+4] == word[i+5]): return True return False def exercise1(): with open( words.txt ) as f: for word in f: if is_triple_duplicate(word): print *, word,
24 Bottom-up: Downey, exercise 9.8 Here s another Car Talk Puzzler: I was driving on the highway the other day and I happened to notice my odometer. Like most odometers, it shows six digits, in whole miles only. So, if my car had 300,000 miles, for example, I d see Now, what I saw that day was very interesting. I noticed that the last 4 digits were palindromic; that is, they read the same forward as backward. For example, is a palindrome, so my odometer could have read One mile later, the last 5 numbers were palindromic. For example, it could have read One mile after that, the middle 4 out of 6 numbers were palindromic. And you ready for this? One mile later, all 6 were palindromic! The question is, what was on the odometer when I first looked? Write a Python program that tests all the six-digit numbers and prints any numbers that satisfy these requirements.
25 Solution def palindrome(s): return s == s[::-1] def string_of_numbers(n): return str(n).zfill(6) def exercise2(): for n in range(0, ): last_four = string_of_numbers(n)[2:6] last_five = string_of_numbers(n+1)[1:6] middle = string_of_numbers(n+2)[1:5] all_six = string_of_numbers(n+3) if (palindrome(last_four) and palindrome(last_five) and palindrome(middle) and palindrome(all_six)): print string_of_numbers(n) print evidence: 4:%s, 5:%s, m:%s, 6:%s % (last_four, last_five,middle,all_six)
LECTURE 1. Getting Started with Python
LECTURE 1 Getting Started with Python ABOUT PYTHON Development started in the 1980 s by Guido van Rossum. Only became popular in the last decade or so. Python 2.x currently dominates, but Python 3.x is
More informationOOP and Scripting in Python
DIEE - Università degli Studi di Cagliari OOP and Scripting in Python Introduction Giuliano Armano DIEE Univ. di Cagliari Python Roots... Object Oriented Programming (C++, Modula-3, ABC, Icon) Scripting
More information1 Decorators. 2 Descriptors. 3 Static Variables. 4 Anonymous Classes. Sandeep Sadanandan (TU, Munich) Python For Fine Programmers July 13, / 19
1 Decorators 2 Descriptors 3 Static Variables 4 Anonymous Classes Sandeep Sadanandan (TU, Munich) Python For Fine Programmers July 13, 2009 1 / 19 Decorator Pattern In object-oriented programming, the
More informationLearning R via Python...or the other way around
Learning R via Python...or the other way around Dept. of Politics - NYU January 7, 2010 What We ll Cover Brief review of Python The Zen of Python How are R and Python the same, and how are they different
More informationCSC 221: Introduction to Programming. Fall 2013
CSC 221: Introduction to Programming Fall 2013 Python data, assignments & turtles Scratch programming review Python & IDLE numbers & expressions variables & assignments strings & concatenation input &
More informationSD314 Outils pour le Big Data
Institut Supérieur de l Aéronautique et de l Espace SD314 Outils pour le Big Data Functional programming in Python Christophe Garion DISC ISAE Christophe Garion SD314 Outils pour le Big Data 1/ 35 License
More informationInverse Ray Shooting Tutorial. Jorge Jiménez Vicente Dpto. Física Teórica y del Cosmos Universidad de Granada Spain
Inverse Ray Shooting Tutorial Jorge Jiménez Vicente Dpto. Física Teórica y del Cosmos Universidad de Granada Spain Final goal Session I Introduction to Python Solving the lens equation Ray shooting basics
More informationCoding Styles for Python
Wintersemester 2007/2008 1 The Zen of Python 2 Style Guide for Python Code 3 Whitespace in Expressions and Statements 4 Naming Conventions 5 References The Zen of Python Python 2.4.2 (#2, Sep 30 2005,
More informationIntro to Programming. Unit 7. What is Programming? What is Programming? Intro to Programming
Intro to Programming Unit 7 Intro to Programming 1 What is Programming? 1. Programming Languages 2. Markup vs. Programming 1. Introduction 2. Print Statement 3. Strings 4. Types and Values 5. Math Externals
More informationCS Programming Languages: Python
CS 3101-1 - Programming Languages: Python Daniel Bauer (bauer@cs.columbia.edu) October 15 2014 Daniel Bauer CS3101-1 Python - 06 - Testing, Debugging/Decorators/Numpy/Scipy 1/41 Contents Debugging and
More informationPython for Non-programmers
Python for Non-programmers A Gentle Introduction 1 Yann Tambouret Scientific Computing and Visualization Information Services & Technology Boston University 111 Cummington St. yannpaul@bu.edu Winter 2013
More informationThe Practice of Computing Using PYTHON. Chapter 4. Working with Strings. Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
The Practice of Computing Using PYTHON William Punch Richard Enbody Chapter 4 Working with Strings 1 Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Sequence of Characters We
More informationRepresenting text on the computer: ASCII, Unicode, and UTF 8
Representing text on the computer: ASCII, Unicode, and UTF 8 STAT/CS 287 Jim Bagrow Question: computers can only understand numbers. In particular, only two numbers, 0 and 1 (binary digits or bits). So
More informationCS 374 Fall 2014 Homework 2 Due Tuesday, September 16, 2014 at noon
CS 374 Fall 2014 Homework 2 Due Tuesday, September 16, 2014 at noon Groups of up to three students may submit common solutions for each problem in this homework and in all future homeworks You are responsible
More informationCIS192: Python Programming
CIS192: Python Programming Introduction Harry Smith University of Pennsylvania January 18, 2017 Harry Smith (University of Pennsylvania) CIS 192 Lecture 1 January 18, 2017 1 / 34 Outline 1 Logistics Rooms
More informationWorking with Lists 4
CS 61A Lecture 10 Announcements Lists ['Demo'] Working with Lists 4 Working with Lists >>> digits = [1, 8, 2, 8] 4 Working with Lists >>> digits = [1, 8, 2, 8] >>> digits = [2//2, 2+2+2+2, 2, 2*2*2] 4
More informationSequence of Characters. Non-printing Characters. And Then There Is """ """ Subset of UTF-8. String Representation 6/5/2018.
Chapter 4 Working with Strings Sequence of Characters we've talked about strings being a sequence of characters. a string is indicated between ' ' or " " the exact sequence of characters is maintained
More informationLecture 10: Repetition
Lecture 10: Repetition Introduction for Linguists (LT2102) Markus Forsberg Språkbanken University of Gothenburg October 19, 2010 Assignment 3 Revision: word_tokenize and sent_tokenize are too broken for
More informationAdvanced Computer Programming
Hazırlayan Yard. Doç. Dr. Mehmet Fidan VARIABLE TYPES Integral Types: In C#, an integral is a category of types. For anyone confused because the word Integral sounds like a mathematical term, from the
More informationA polyglot day: learning from language paradigms. Benson Joeris Kathleen Dollard
A polyglot day: learning from language paradigms Benson Joeris Kathleen Dollard What if you understood all the paradigms that define modern languages? You could program better in your base language, choose
More informationIntro. Scheme Basics. scm> 5 5. scm>
Intro Let s take some time to talk about LISP. It stands for LISt Processing a way of coding using only lists! It sounds pretty radical, and it is. There are lots of cool things to know about LISP; if
More informationIntroduction to Python (All the Basic Stuff)
Introduction to Python (All the Basic Stuff) 1 Learning Objectives Python program development Command line, IDEs, file editing Language fundamentals Types & variables Expressions I/O Control flow Functions
More informationLecture 9: GUI and debugging
Lecture 9: GUI and debugging Introduction for Linguists (LT2102) Markus Forsberg Språkbanken University of Gothenburg October 12, 2010 Assignment 2 I have now corrected all assignments. If you have not
More informationWorking with Strings. Husni. "The Practice of Computing Using Python", Punch & Enbody, Copyright 2013 Pearson Education, Inc.
Working with Strings Husni "The Practice of Computing Using Python", Punch & Enbody, Copyright 2013 Pearson Education, Inc. Sequence of characters We've talked about strings being a sequence of characters.
More informationAdministrativia. CS107 Introduction to Computer Science. Readings. Algorithms. Expressing algorithms
CS107 Introduction to Computer Science Lecture 2 An Introduction to Algorithms: and Conditionals Administrativia Lab access Searles 128: Mon-Friday 8-5pm (unless class in progress) and 6-10pm Sat, Sun
More informationPrinceton University. Computer Science 217: Introduction to Programming Systems. Data Types in C
Princeton University Computer Science 217: Introduction to Programming Systems Data Types in C 1 Goals of C Designers wanted C to: Support system programming Be low-level Be easy for people to handle But
More informationSlide Set 2. for ENCM 335 in Fall Steve Norman, PhD, PEng
Slide Set 2 for ENCM 335 in Fall 2018 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary September 2018 ENCM 335 Fall 2018 Slide Set 2 slide
More informationLecture 3. Strings, Functions, & Modules
Lecture 3 Strings, Functions, & Modules Labs this Week Lab 1 is due at the beginning of your lab If it is not yet by then, you cannot get credit Only exception is for students who added late (Those students
More informationVariables, Constants, and Data Types
Variables, Constants, and Data Types Strings and Escape Characters Primitive Data Types Variables, Initialization, and Assignment Constants Reading for this lecture: Dawson, Chapter 2 http://introcs.cs.princeton.edu/python/12types
More informationPython: Its Past, Present, and Future in Meteorology
Python: Its Past, Present, and Future in Meteorology 7th Symposium on Advances in Modeling and Analysis Using Python 23 January 2016 Seattle, WA Ryan May (@dopplershift) UCAR/Unidata Outline The Past What
More information2/12/17. Goals of this Lecture. Historical context Princeton University Computer Science 217: Introduction to Programming Systems
Princeton University Computer Science 217: Introduction to Programming Systems The C Programming Language Part 1 For Your Amusement C is quirky, flawed, and an enormous success. While accidents of history
More informationPython Print Decode Error - Output Not Utf-8
Python Print Decode Error - Output Not Utf- 8 The following error occurs when you try to print non-utf-8 stuff with Python via Sublime Text: (Decode error - output not utf-8). The same code, executed via
More informationPrinceton University Computer Science 217: Introduction to Programming Systems The C Programming Language Part 1
Princeton University Computer Science 217: Introduction to Programming Systems The C Programming Language Part 1 C is quirky, flawed, and an enormous success. While accidents of history surely helped,
More informationProgramming Fundamentals and Python
Chapter 2 Programming Fundamentals and Python This chapter provides a non-technical overview of Python and will cover the basic programming knowledge needed for the rest of the chapters in Part 1. It contains
More informationCSI33 Data Structures
Outline Department of Mathematics and Computer Science Bronx Community College October 24, 2018 Outline Outline 1 Chapter 8: A C++ Introduction For Python Programmers Expressions and Operator Precedence
More informationCMSC 201 Fall 2016 Lab 09 Advanced Debugging
CMSC 201 Fall 2016 Lab 09 Advanced Debugging Assignment: Lab 09 Advanced Debugging Due Date: During discussion Value: 10 points Part 1: Introduction to Errors Throughout this semester, we have been working
More informationAdvanced Programming Techniques. Python. Christopher Moretti
Advanced Programming Techniques Python Christopher Moretti PYTHON PYTHON And the ten minutes striking up a conversation with that strange kid in homeroom sometimes matters more than every other part of
More informationIf Statements, For Loops, Functions
Fundamentals of Programming If Statements, For Loops, Functions Table of Contents Hello World Types of Variables Integers and Floats String Boolean Relational Operators Lists Conditionals If and Else Statements
More informationLECTURE 1. Getting Started with Python
LECTURE 1 Getting Started with Python ABOUT PYTHON Development started in the 1980 s by Guido van Rossum. Only became popular in the last decade or so. Python 2.x currently dominates, but Python 3.x is
More informationCS 1124 Media computation. Lecture 9.1, October 20, 2008 Steve Harrison
CS 1124 Media computation Lecture 9.1, October 20, 2008 Steve Harrison Where were we? Backwards (in 3 ways) Strings Where were we? Backwards (in 3 ways) Strings Backwards (1) Reverse the samples: recipe
More informationRecall that strings and tuples are immutable datatypes, while lists are mutable datatypes. What does this mean?
6.189 Day 4 Readings How To Think Like A Computer Scientist, chapters 7 and 8 6.01 Fall 2009 Course Notes page 27-29 ( Lists and Iterations over lists ; List Comprehensions is optional); sections 3.2-3.4
More informationProgramming with Python
Programming with Python Dr Ben Dudson Department of Physics, University of York 21st January 2011 http://www-users.york.ac.uk/ bd512/teaching.shtml Dr Ben Dudson Introduction to Programming - Lecture 2
More informationVariables and. What Really Happens When You Run hello_world.py
2 Variables and Simple Data Types In this chapter you ll learn about the different kinds of data you can work with in your Python programs. You ll also learn how to use variables to represent data in your
More informationCSC 148 Lecture 3. Dynamic Typing, Scoping, and Namespaces. Recursion
CSC 148 Lecture 3 Dynamic Typing, Scoping, and Namespaces Recursion Announcements Python Ramp Up Session Monday June 1st, 1 5pm. BA3195 This will be a more detailed introduction to the Python language
More informationSyntactic Analysis. CS345H: Programming Languages. Lecture 3: Lexical Analysis. Outline. Lexical Analysis. What is a Token? Tokens
Syntactic Analysis CS45H: Programming Languages Lecture : Lexical Analysis Thomas Dillig Main Question: How to give structure to strings Analogy: Understanding an English sentence First, we separate a
More informationGetting Started. Excerpted from Hello World! Computer Programming for Kids and Other Beginners
Getting Started Excerpted from Hello World! Computer Programming for Kids and Other Beginners EARLY ACCESS EDITION Warren D. Sande and Carter Sande MEAP Release: May 2008 Softbound print: November 2008
More informationSCHEME 7. 1 Introduction. 2 Primitives COMPUTER SCIENCE 61A. October 29, 2015
SCHEME 7 COMPUTER SCIENCE 61A October 29, 2015 1 Introduction In the next part of the course, we will be working with the Scheme programming language. In addition to learning how to write Scheme programs,
More informationSCHEME 8. 1 Introduction. 2 Primitives COMPUTER SCIENCE 61A. March 23, 2017
SCHEME 8 COMPUTER SCIENCE 61A March 2, 2017 1 Introduction In the next part of the course, we will be working with the Scheme programming language. In addition to learning how to write Scheme programs,
More informationThe UOB Python Lectures: Part 1 - Introduction to Python
The UOB Python Lectures: Part 1 - Introduction to Python Hesham al-ammal University of Bahrain 18/3/2013 Twitter: @heshaaam Blog and slides: heshaaam.wordpress.com 1 1 Feel like flying? Ref: xkcd.com 2
More information3 The Building Blocks: Data Types, Literals, and Variables
chapter 3 The Building Blocks: Data Types, Literals, and Variables 3.1 Data Types A program can do many things, including calculations, sorting names, preparing phone lists, displaying images, validating
More informationCSCE 110 Programming I Basics of Python: Variables, Expressions, Input/Output
CSCE 110 Programming I Basics of Python: Variables, Expressions, Input/Output Dr. Tiffani L. Williams Department of Computer Science and Engineering Texas A&M University Spring 2011 Python Python was developed
More informationHello World! Computer Programming for Kids and Other Beginners. Chapter 1. by Warren Sande and Carter Sande. Copyright 2009 Manning Publications
Hello World! Computer Programming for Kids and Other Beginners by Warren Sande and Carter Sande Chapter 1 Copyright 2009 Manning Publications brief contents Preface xiii Acknowledgments xix About this
More informationVariables, expressions and statements
Variables, expressions and statements 2.1. Values and data types A value is one of the fundamental things like a letter or a number that a program manipulates. The values we have seen so far are 2 (the
More information\n is used in a string to indicate the newline character. An expression produces data. The simplest expression
Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of
More informationThese are notes for the third lecture; if statements and loops.
These are notes for the third lecture; if statements and loops. 1 Yeah, this is going to be the second slide in a lot of lectures. 2 - Dominant language for desktop application development - Most modern
More informationIntroduction to Python
Introduction to Python CB2-101 Introduction to Scientific Computing November 11 th, 2014 Emidio Capriotti http://biofold.org/emidio Division of Informatics Department of Pathology Python Python high-level
More informationComputer Science 1001.py. Lecture 19a: Generators continued; Characters and Text Representation: Ascii and Unicode
Computer Science 1001.py Lecture 19a: Generators continued; Characters and Text Representation: Ascii and Unicode Instructors: Daniel Deutch, Amir Rubinstein Teaching Assistants: Ben Bogin, Michal Kleinbort,
More informationCMPS 10 Introduction to Computer Science Lecture Notes
CMPS Introduction to Computer Science Lecture Notes Binary Numbers Until now we have considered the Computing Agent that executes algorithms to be an abstract entity. Now we will be concerned with techniques
More informationThinking Hard About Python
Thinking Hard About Python @pydanny Danny: 128,546++ Audrey: 121,871++ http://2scoops.org What I want you to think of me. One Cartwheel of Many Around the World What I m really like. Myself at 13 in front
More information61A Lecture 2. Friday, August 28, 2015
61A Lecture 2 Friday, August 28, 2015 Names, Assignment, and User-Defined Functions (Demo) Types of Expressions Primitive expressions: 2 add 'hello' Number or Numeral Name String Call expressions: max
More informationCS1 Lecture 3 Jan. 18, 2019
CS1 Lecture 3 Jan. 18, 2019 Office hours for Prof. Cremer and for TAs have been posted. Locations will change check class website regularly First homework assignment will be available Monday evening, due
More informationWeb Design and HTML. Web Page vs Web Site. Navigation. Links. A web page is a single page viewable using web browser. A web site is a set of web pages
Web Page vs Web Site Web Design and HTML Lecture 14 COMPSCI111/111G SS 2018 A web page is a single page viewable using web browser Should be visually appealing, informative A web site is a set of web pages
More informationIntroduction to: Computers & Programming: Strings and Other Sequences
Introduction to: Computers & Programming: Strings and Other Sequences in Python Part I Adam Meyers New York University Outline What is a Data Structure? What is a Sequence? Sequences in Python All About
More informationIntroduction to: Computers & Programming: Strings and Other Sequences
Introduction to: Computers & Programming: Strings and Other Sequences in Python Part I Adam Meyers New York University Outline What is a Data Structure? What is a Sequence? Sequences in Python All About
More informationProgramming Lecture 3
Programming Lecture 3 Expressions (Chapter 3) Primitive types Aside: Context Free Grammars Constants, variables Identifiers Variable declarations Arithmetic expressions Operator precedence Assignment statements
More informationTHE INTEGER DATA TYPES. Laura Marik Spring 2012 C++ Course Notes (Provided by Jason Minski)
THE INTEGER DATA TYPES STORAGE OF INTEGER TYPES IN MEMORY All data types are stored in binary in memory. The type that you give a value indicates to the machine what encoding to use to store the data in
More informationCS2304: Python for Java Programmers. CS2304: Sequences and Collections
CS2304: Sequences and Collections Sequences In Python A sequence type in python supports: The in membership operator. The len() function. Slicing like we saw with strings, s[1:3]. And is iterable (for
More informationCS1 Lecture 3 Jan. 22, 2018
CS1 Lecture 3 Jan. 22, 2018 Office hours for me and for TAs have been posted, locations will change check class website regularly First homework available, due Mon., 9:00am. Discussion sections tomorrow
More informationIntroduction to: Computers & Programming: Review prior to 1 st Midterm
Introduction to: Computers & Programming: Review prior to 1 st Midterm Adam Meyers New York University Summary Some Procedural Matters Summary of what you need to Know For the Test and To Go Further in
More informationCMSC 201 Computer Science I for Majors
CMSC 201 Computer Science I for Majors Lecture 02 Intro to Python Syllabus Last Class We Covered Grading scheme Academic Integrity Policy (Collaboration Policy) Getting Help Office hours Programming Mindset
More informationPython Programming: An Introduction to Computer Science
Python Programming: An Introduction to Computer Science Chapter 7 Decision Structures Python Programming, 2/e 1 Objectives æ To understand the programming pattern simple decision and its implementation
More information(Refer Slide Time: 01:12)
Internet Technology Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No #22 PERL Part II We continue with our discussion on the Perl
More informationOutline. CIS 110: Introduction to Computer Programming. What is Computer Science? What is computer programming? What is computer science?
Outline CIS 110: Introduction to Computer Programming Lecture 1 An introduction of an introduction ( 1.1 1.3)* 1. What is computer science and computer programming? 2. Introductions and logistics 3. The
More informationPython 3000 and You. Guido van Rossum PyCon March 14, 2008
Python 3000 and You Guido van Rossum PyCon March 14, 2008 Why Py3k Open source needs to move or die Matz (creator of Ruby) To fix early, sticky design mistakes e.g. classic classes, int division, print
More informationOverview. - General Data Types - Categories of Words. - Define Before Use. - The Three S s. - End of Statement - My First Program
Overview - General Data Types - Categories of Words - The Three S s - Define Before Use - End of Statement - My First Program a description of data, defining a set of valid values and operations List of
More informationAnnouncements For This Lecture
Lecture 4 Strings Announcements For This Lecture Chapter 8 Readings 8.1, 8.2, 8.4, 8.5 Avoid for-loop sections Next Lab More expression tables Testing functions Assignment 1 Will post it on Monday Need
More informationGIS 4653/5653: Spatial Programming and GIS. More Python: Statements, Types, Functions, Modules, Classes
GIS 4653/5653: Spatial Programming and GIS More Python: Statements, Types, Functions, Modules, Classes Statement Syntax The if-elif-else statement Indentation and and colons are important Parentheses and
More informationYour First C++ Program. September 1, 2010
Your First C++ Program September 1, 2010 Your First C++ Program //*********************************************************** // File name: hello.cpp // Author: Bob Smith // Date: 09/01/2010 // Purpose:
More informationCasabac Unicode Support
Unicode Support Unicode Support Full Unicode support was added into the GUI Server with build 25_20040105. Before ISO 8859-1 was used for encoding and decoding HTML pages and your system's default encoding
More informationCharacter Encodings. Fabian M. Suchanek
Character Encodings Fabian M. Suchanek 22 Semantic IE Reasoning Fact Extraction You are here Instance Extraction singer Entity Disambiguation singer Elvis Entity Recognition Source Selection and Preparation
More informationCMSC201 Computer Science I for Majors
CMSC201 Computer Science I for Majors Lecture 15 File I/O All materials copyright UMBC unless otherwise noted Last Class We Covered Python s tuple data structure Tuples in functions (and as return values)
More informationSyntax Error Malformed Unicode Character Escape Sequence Javascript
Syntax Error Malformed Unicode Character Escape Sequence Javascript Firebug showed a malformed unicode character escape sequence but I have no media on the console and you'll see the syntax error in the
More informationCSCI 2010 Principles of Computer Science. Data and Expressions 08/09/2013 CSCI
CSCI 2010 Principles of Computer Science Data and Expressions 08/09/2013 CSCI 2010 1 Data Types, Variables and Expressions in Java We look at the primitive data types, strings and expressions that are
More informationCS 115 Lecture 4. More Python; testing software. Neil Moore
CS 115 Lecture 4 More Python; testing software Neil Moore Department of Computer Science University of Kentucky Lexington, Kentucky 40506 neil@cs.uky.edu 8 September 2015 Syntax: Statements A statement
More informationcis20.1 design and implementation of software applications I fall 2007 lecture # I.2 topics: introduction to java, part 1
topics: introduction to java, part 1 cis20.1 design and implementation of software applications I fall 2007 lecture # I.2 cis20.1-fall2007-sklar-leci.2 1 Java. Java is an object-oriented language: it is
More informationThe second statement selects character number 1 from and assigns it to.
Chapter 8 Strings 8.1 A string is a sequence A string is a sequence of characters. You can access the characters one at a time with the bracket operator: The second statement selects character number 1
More informationFile Operations. Working with files in Python. Files are persistent data storage. File Extensions. CS111 Computer Programming
File Operations Files are persistent data storage titanicdata.txt in PS06 Persistent vs. volatile memory. The bit as the unit of information. Persistent = data that is not dependent on a program (exists
More information(Python) Chapter 3: Repetition
(Python) Chapter 3: Repetition 3.1 while loop Motivation Using our current set of tools, repeating a simple statement many times is tedious. The only item we can currently repeat easily is printing the
More informationLecture Transcript While and Do While Statements in C++
Lecture Transcript While and Do While Statements in C++ Hello and welcome back. In this lecture we are going to look at the while and do...while iteration statements in C++. Here is a quick recap of some
More informationUniversity of Texas at Arlington, TX, USA
Dept. of Computer Science and Engineering University of Texas at Arlington, TX, USA In programming, a string is a sequence of characters. A string is indicated between or The exact kind of quotes must
More informationHow to Think Like a Computer Scientist: Learning with Python 3»
How to Think Like a Computer Scientist: Learning with Python 3» previous next index 1. The way of the program The goal of this book is to teach you to think like a computer scientist. This way of thinking
More informationCS1004: Intro to CS in Java, Spring 2005
CS1004: Intro to CS in Java, Spring 2005 Lecture #16: Java conditionals/loops, cont d. Janak J Parekh janak@cs.columbia.edu Administrivia Midterms returned now Weird distribution Mean: 35.4 ± 8.4 What
More informationVariables and Data Representation
You will recall that a computer program is a set of instructions that tell a computer how to transform a given set of input into a specific output. Any program, procedural, event driven or object oriented
More informationCS1 Lecture 9 Feb. 5, 2018
CS1 Lecture 9 Feb. 5, 2018 HW 3 available today 5pm, due 9am Monday. Discussion sections this week: loop and string practice HW1 grading done scores posted by noon toeay Common errors: 1) hotel nights,
More informationComputer Science 1001.py. Lecture 19, part B: Characters and Text Representation: Ascii and Unicode
Computer Science 1001.py Lecture 19, part B: Characters and Text Representation: Ascii and Unicode Instructors: Benny Chor, Amir Rubinstein Teaching Assistants: Amir Gilad, Michal Kleinbort Founding Teaching
More informationIntro to Strings. CSE 231 Rich Enbody. String: a sequence of characters. Indicated with quotes: or " " 9/11/13
CSE 231 Rich Enbody String: a sequence of characters. Indicated with quotes: or " " 2 1 Triple quotes: preserve both the vertical and horizontal formatting of the string. Allows you to type tables, paragraphs,
More informationPython Programming, bridging course 2011
Python Programming, bridging course 2011 About the course Few lectures Focus on programming practice Slides on the homepage No course book. Using online resources instead. Online Python resources http://www.python.org/
More informationCMSC 341 Hashing (Continued) Based on slides from previous iterations of this course
CMSC 341 Hashing (Continued) Based on slides from previous iterations of this course Today s Topics Review Uses and motivations of hash tables Major concerns with hash tables Properties Hash function Hash
More informationIntro to Haskell Notes: Part 5
Intro to Haskell Notes: Part 5 Adrian Brasoveanu October 5, 2013 Contents 1 Curried functions and related issues 1 1.1 Curried functions......................................... 1 1.2 Partially applied
More informationAbsolute C++ Walter Savitch
Absolute C++ sixth edition Walter Savitch Global edition This page intentionally left blank Absolute C++, Global Edition Cover Title Page Copyright Page Preface Acknowledgments Brief Contents Contents
More information