SlideShare une entreprise Scribd logo
1  sur  106
Python
$ python
Running this command should start the interactive Python interpreter , with output similar to
the following:
Python 2.5.1 (r251:54869, Apr 18 2007, 22:08:04)
[GCC 4.0.1 (Apple Computer, Inc. build 5367)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
Package Manager:
$apt-get install python
Print “Hello, World!”
Hello, Wordl!
>>>
Numbers and Expressions:
The interactive Python interpreter can be used as a powerful calculator.
>>> 2 + 2
>>> 53672 + 235253
288925
Real numbers are called floats (or floating-point numbers ) in Python. If either one of the
numbers in a division is a float, the result will be, too:
>>> 1.0 / 2.0
0.5
>>> 1/2.0
0.5
>>> 1.0/2
0.5
>>> 1/2.
0.5
1 % 2
Variables
you might want the name x to represent 3 . To make it so, simply execute the following
>>> x = 3
This is called an assignment . We assign the value3 to the variable
Another way of putting this is to say that we bind the variable to the value (or object) 3
After you’ve assigned a value to a variable, you can use the variable in expressions:
>>> x * 2
6
Statements
>>> 2*2
4
>>> print 2*2
4
Getting Input from the User:
>>> input("The meaning of life: ")
The meaning of life: 42
42
>>> x = input("x: ")
x: 34
>>> y = input("y: ")
y: 42
>>> print x * y
1428
Functions
>>> 2**3
8
>>> pow(2,3)
8
>>> 10 + pow(2, 3*5)/3.0
10932.666666666666
>>> abs(-10)
10
>>> 1/2
0
>>> round(1.0/2.0)
1.0
Modules
Import modules with a special command called (naturally enough) import
>>> import math
>>> math.floor(32.9)
32.0
>>> int(math.floor(32.9))
32
>>> from math import sqrt
>>> sqrt(9)
3.0
Comments
The hash sign (# )
is a bit special in Python. When you put it in your code, everything to the right of it is ignored
(which is why the Python interpreter didn’t choke on the /usr/bin/env stuff used earlier). Here
is an example:
# Print the circumference of the circle:
print 2 * pi * radius
# Get the user's name:
user_name = raw_input("What is your name?")
Strings:
Now what was all that raw_input and "Hello, " + name + "!“ stuff about? Let’s tackle the "Hello"
part first and leave raw_input for later.
print "Hello, world!"
Single Quoted Strings
>>”Hello World”
>>’Hello World’
Concatenating Strings
>>”Let’s say” ‘”Hello,World”
‘Let’s say “Hello World!”
X=“Hello”
Y=“World” x y
String Representation , str and repr
>>>”Hello, World”
‘Hello, world’
10000L
>>>print “Heloo World”
Hello, World!
10000
Input vs. raw_input
Name = input(“What is your name?”)
Print “Hello,” + name+”!”
Input(“Enter a number:”)
Enter a number : 3
Raw_input(“Enter a number:”)
Enter a number:3
3
Long String
Print ‘’’This is a very long string.
It continues here.
And it’s not over yet
“Hello World!”
Still here.’’’
Print “Hello,
World!”
Raw Strings
>>>Print ‘Hello,n world!’
Hello,
World!
>>>Path = ‘C:nowhere’
>>>path
‘C:nowhere’
Unicode Strings
Unicode strings are stored as 16-bit Unicode.
>>>u’Hello, World!’
U’Hello, World!’
List and Tuple
Data structure is a collection of data elements.
>>Edward = [‘Edward Gumby’,42]
Edward = [‘Edward Gumby’,42]
John = [‘John Smith’,50]
Database = [Edward,john]
Database
[[‘Edward Gumby’,42],[‘John Smith’,50]
Indexing
All elements in a sequence are numbered from 0 to upwards.
Greeting = “Hello”
Greeting[0]
‘H’
Note : A String is a sequence of characters. The index 0 refers to first element.
Greeting[-1] = ‘o’
Fourth = raw_input(‘Year:’)[3]
Year: 2005
>>Fourth
‘5’
Slicing
Indexing to access individual elements.
You can use slicing to access ranges of elements.
You can do this by using two indices, separated by a colon:
>>tag = ‘<a href=http://www.python.org>Python web site</a>’
>>tag[9:30]
‘http://www.python.org’
>>tag[32:-4]
‘Python web site’
Numbers[0:10:1]
[1,2,3,4,5,6,7,8,9,10]
Numbers[0:10:2]
[1,3,5,7,9]
Numbers[3:6:3]
[4]
Numbers[::4]
[1,5,9]
Adding Sequence :
[1,2,3]+[4,5,6]
[1,2,3,4,5,6]
‘Hello’+’World!’
>>>[1,2,3]+’World’
Multiplication:
‘python’*5
[42]*10
[42,42,42,42,42,42,42,42,42]
Sequence = [None]*10
Sequence
[None,None,None,None,None,None,None,None,None,None]
Lists:
The list function:
>>list(‘Hello’)
[‘H’,’e’,’l’,’l’,’o’]
‘’.join(somelist)
X = [1,1,1]
X[1]=2
X
[1,2,1]
Deleting Elements
Names = [‘Alice’,’Beth’,’Cecil’,’Dee-Dee’,’Earl’]
Del Names[2]
Names
[‘Alice’,’Beth’,’Cecil’]
List methods
Object.method(arguments)
Append :
The append method is used to append an object to the end of a list:
Lst = [1,2,3]
Lst.append(4)
Lst
[1,2,3,4]
Count
The count method counts the occurences of an element in the list
>>[‘to’,’be’,’or’,’not’,’to’,’be’].count(‘to’)
2
>>X=[[1,2],1,1,[2,1,[1,2]]]
X.count(1)
2
>> X.count([1,2])
index
The index method is used for searching lists to find the index of the first
Occurrence of a value:
>> knights = [‘we’,’are’,’the’,’knings’,’who’,’say’,’ni’]
>>>knights.index(‘who’)
4
>>knights[4]
‘who’
insert
The insert method is used to insert an object into a list:
>>> numbers = [1,2,3,4,5,6,7]
>>>numbers.insert(3,’four’)
>>>numbers
[1,2,3,’four’,5,6,7]
pop
The pop method removes an element (by default, the last one) from the list and returns it:
>>>x=[1,2,3]
>>>x.pop()
3
>>>x
[1,2]
>>>x.pop(0)
1
>>>x [2]
>>>x = [1.2.3]
>>>x.append(x.pop())
>>>x
[1,2,3]
remove
The remove method is used to remove
>>>x = [‘to’,’be’,’or’,’not’,’to’,’be’]
>>>x.remove(‘be’)
>>>x
reverse
>>>X = [1,2,3]
>>>X.reverse()
>>>X
[3,2,1]
Sort
>>>X = [4,6,2,1,7,9]
>>X.sort()
>>>x
[1,2,4,6,7,9]
>>> y = x.sort()
>>>print y
Tuples
Tuples are sequences.
>>>1,2,3
(1,2,3)
>>>(1,2,3)
(1,2,3)
>>>()
()
The tuple function
>>>tuple([1,2,3])
(1,2,3)
Tuple(‘abc’)
(‘a’,’b’,’c’)
Tuple((1,2,3))
(1,2,3)
>>>x = 1,2,3
>>>x[1]
2
>>>x[0:2]
>>>(1,2)
Working with Strings:
>>>website = ‘http://www.python.org’
>>>website[-3:] = ‘com’
String Formatting
>>>format = “Hello, %s.%s enough for ya?”
>>>values = (‘world’,’Hot’)
>>>print format % values
Hello,World. Hot enough for ya?
>>> 'Price of eggs: $%d' % 42
'Price of eggs: $42'
>>> 'Hexadecimal price of eggs: %x' % 42
'Hexadecimal price of eggs: 2a'
>>> from math import pi
>>> 'Pi: %f...' % pi
'Pi: 3.141593...'
>>> 'Very inexact estimate of pi: %i' % pi
'Very inexact estimate of pi: 3'
>>> 'Using str: %s' % 42L
'Using str: 42'
>>> 'Using repr: %r' % 42L
'Using repr: 42L
find
The find method finds a substring within a larger string. It returns the leftmost index where the
substring is found. If it is not found, –1 is returned:
>>> 'With a moo-moo here, and a moo-moo there'.find('moo')
7
>>> title = "Monty Python's Flying Circus"
>>> title.find('Monty')
0
join
A very important string method, join is the inverse of split . It is used to join the elements of a
Sequence.
>>> seq = [1, 2, 3, 4, 5]
>>> sep = '+'
>>> sep.join(seq
lower
The lower method returns a lowercase version of the string:
>>> 'Trondheim Hammer Dance'.lower()
'trondheim hammer dance
>>> if 'Gumby' in ['gumby', 'smith', 'jones']: print 'Found it!
replace
The replace method returns a string where all the occurrences of one string have been
replaced by another:
>>> 'This is a test'.replace('is', 'eez')
'Theez eez a test
split
A very important string method, split is the inverse of join , and is used to split a string into a
sequence:
>>> '1+2+3+4+5'.split('+')
['1', '2', '3', '4', '5']
>>> '/usr/bin/env'.split('/')
['', 'usr', 'bin', 'env']
>>> 'Using the default'.split()
['Using', 'the', 'default']
strip
The strip method returns a string where whitespace on the left and right (but not internally)
has been stripped (removed):
>>> ' internal whitespace is kept '.strip()
'internal whitespace is kept‘ As with lower , strip can be useful when comparing input to stored values. Let’s return to
the user name example from the section on lower
, and let’s say that the user inadvertently
types a space after his name:
>>> names = ['gumby', 'smith', 'jones']
>>> name = 'gumby '
>>> if name in names: print 'Found it!'
...
>>> if name.strip() in names: print 'Found it!'
...
Found it!
>>>
Dictionaries
Data structure in which you can refer to each value by name.
This type of structure is called a mapping. The only built-in mapping type in Python is the
dictionary.
Dictionary Uses:
A dictionary is more appropriate than a list in many situations. Here are some examples of
uses of Python dictionaries:
• Representing the state of a game board, with each key being a tuple of coordinates
• Storing file modification times, with file names as keys
• A digital telephone/address book
Let’s say you have a list of people:
>>> names = ['Alice', 'Beth', 'Cecil', 'Dee-Dee', 'Earl']
Creating and Using Dictionaries
Dictionaries are written like this:
phonebook = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
Note
Keys are unique within a dictionary (and any other kind of mapping). Values do not need to be
unique within a dictionary.
The dict Function You can use the dict function 1 to construct dictionaries from other mappings
(for example, other dictionaries) orfrom sequences of (key, value) pairs.
>>> items = [('name', 'Gumby'), ('age', 42)]
>>> d = dict(items)
>>> d
{'age': 42, 'name': 'Gumby'}
>>> d['name']
'Gumby
Dictionary Methods
Clear
The clear method removes all items from the dictionary. This is an In-place operation (like
list.sort ), so it returns nothing (or, rather, None)
>>> d = {}
>>> d['name'] = 'Gumby'
>>> d['age'] = 42
>>> d
{'age': 42, 'name': 'Gumby'}
>>> returned_value = d.clear()
>>> d
{}
>>> print returned_value
None
>>> x = {}
>>> y = x
>>> x['key'] = 'value'
>>> y
{'key': 'value'}
>>> x = {}
>>> y
{'key': 'value'}
copy
The copy method returns a new dictionary with the same key-value pairs (a shallow copy
, since the values themselves are the same , not copies):
>>> x = {'username': 'admin', 'machines': ['foo', 'bar', 'baz']}
>>> y = x.copy()
>>> y['username'] = 'mlh'
>>> y['machines'].remove('bar')
>>> y
Deepcopy
>>> from copy import deepcopy
>>> d = {}
>>> d['names'] = ['Alfred', 'Bertrand']
>>> c = d.copy()
>>> dc = deepcopy(d)
>>> d['names'].append('Clive')
>>> c
{'names': ['Alfred', 'Bertrand', 'Clive']}
>>> dc
{'names': ['Alfred', 'Bertrand']}
fromkeys
The fromkeys method creates a new dictionary with the given keys, each with a default corre-
sponding value of None:
>>> {}.fromkeys(['name', 'age'])
{'age': None, 'name': None}
get
The get method is a forgiving way of accessing dictionary items. Ordinarily, when you try to
access an item that is not present in the dictionary, things go very wrong:
>>> d = {}
>>> print d['name']
Traceback (most recent call last):
File "<stdin>", line 1, in ?
KeyError: 'name
has_key
The has_key method checks whether a dictionary has a given key. The expression
d.has_key(k)
is equivalent to k in d . The choice of which to use is largely a matter of taste, although
has_key
is on its way out of the language (it will be gone in Python 3.0). Here is an example of how you
might use has_key
>>> d = {}
>>> d.has_key('name')
False
>>> d['name'] = 'Eric'
>>> d.has_key('name')
True
items and iteritems
The items method returns all the items of the dictionary as a list of items in which each item is
of the form (key, value)
. The items are not returned in any particular order:
>>> d = {'title': 'Python Web Site', 'url': 'http://www.python.org', 'spam': 0}
>>> d.items()
[('url', 'http://www.python.org'), ('spam', 0), ('title', 'Python Web Site')]
Pop
The pop method can be used to get the value corresponding to a given key, and then remove
the key-value pair from
the dictionary:
>>> d = {'x': 1, 'y': 2}
>>> d.pop('x')
1
>>> d
{'y': 2}
Popiem
The popitem method is similar to list.pop , which pops off the last element of a list. Unlike
list.pop , however, popitem pops off an arbitrary item because dictionaries don’t have a “last
element” or any order whatsoever. This may be very useful if you want to remove and process
the items one by one in an efficient way (without retrieving a list of the keys first):
>>> d
{'url': 'http://www.python.org', 'spam': 0, 'title': 'Python Web Site'}
>>> d.popitem()
('url', 'http://www.python.org')
>>> d
{'spam': 0, 'title': 'Python Web Site'}
Setdefault The setdefault method is somewhat similar to get , in that it retrieves a value
associated with a given key. In addition to the get functionality, setdefault sets the value
corresponding to the given key if it is not a lready in the dictionary:
>>> d = {}
>>> d.setdefault('name', 'N/A')
'N/A
>>> d
{'name': 'N/A'}
>>> d['name'] = 'Gumby'
>>> d.setdefault('name', 'N/A')
'Gumby'
>>> d
{'name': 'Gumby'}
update
The update method updates one dictionary with the items of another:
>>> d = {
'title': 'Python Web Site',
'url': 'http://www.python.org',
'changed': 'Mar 14 22:09:15 MET 2008'
}
>>> x = {'title': 'Python Language Website'}
>>> d.update(x)
>>> d
{'url': 'http://www.python.org', 'changed':
'Mar 14 22:09:15 MET 2008', 'title': 'Python Language Website'}
values and iter values
The values method returns a list of the values in the dictionary (and itervalues
returns an iterator of the values). Unlike keys , the list returned by values may contain
duplicates:
>>> d = {}
>>> d[1] = 1
>>> d[2] = 2
>>> d[3] = 3
>>> d[4] = 1
>>> d.values()
[1, 2, 3, 1]
Conditions and Conditional Statements
The following values are considered by the interpreter to mean false when evaluated as a
Boolean expression (for example, as the condition of an if statement):
False None 0 "" () [] {}
>>> True
True
>>> False
False
>>> True == 1
True
>>> False == 0
True
>>> True + False + 42
43
Conditional Execution and the if Statement
Truth values can be combined (which you’ll see in a while), but let’s first see what you can use
them for. Try running the following script:
name = raw_input('What is your name? ')
if name.endswith('Gumby'):
print 'Hello, Mr. Gumby
else Clauses
In the example from the previous section, if you enter a name that ends with “Gumby,” the
method
name.endswith
returns
True
, making the
If statement enter the block, and the greeting
is printed. If you want, you can add an alternative, with the else clause (called a clause
because it isn’t really a separate statement, just a part of the
if
statement):
name = raw_input('What is your name? ')
if name.endswith('Gumby'):
print 'Hello, Mr. Gumby'
else:
print 'Hello, stranger
elif Clauses If you want to check for several conditions, you can use elif , which is short for “else if.” It
is a combination of an if
clause and an else clause—an else clause with a condition:
num = input('Enter a number: ')
if num > 0:
print 'The number is positive'
elif num < 0:
print 'The number is negative'
else:
print 'The number is zero
Nesting Blocks Let’s throw in a few bells and whistles. You can have if statements inside other if statement
blocks, as follows:
name = raw_input('What is your name? ')
if name.endswith('Gumby'):
if name.startswith('Mr.'):
print 'Hello, Mr. Gumby'
elif name.startswith('Mrs.'):
print 'Hello, Mrs. Gumby'
else:
print 'Hello, Gumby'
else:
print 'Hello, stranger'
The Equality Operator
If you want to know if two things are equal, use the equality operator, written as a double
equality sign,
==
:
>>> "foo" == "foo"
True
>>> "foo" == "bar"
False
is: The Identity Operator
The
is
operator is interesting. It
seems to work just like
==
, but it doesn’t:
>>> x = y = [1, 2, 3]
>>> z = [1, 2, 3]
>>> x == y
True
in: The Membership Operator
I have already introduced the
in
operator (in Chapter 2, in the
section “Membership”). It can
be used in conditions, just
like all the other comp
arison operators:
name = raw_input('What is your name? ')
if 's' in name:
print 'Your name contains the letter "s".'
else:
print 'Your name does not contain the letter "s".
Boolean Operators
number = input('Enter a number between 1 and 10: ')
if number <= 10:
if number >= 1:
print 'Great!'
else:
print 'Wrong!'
else:
print 'Wrong!
number = input('Enter a number between 1 and 10: ')
if number <= 10 and number >= 1:
print 'Great!'
else:
print 'Wrong!
Assertions
There is a useful relative of the
if
statement, which works more or less like this (pseudocode):
if not condition:
crash program
Loops
Now you know how to do something if a condition is true (or false), but how do you do some-
thing several times? For example, you might wan t to create a program tha
t reminds you to pay the rent every month, but with the tools we have looked at until now, you
would need to write the program like this (pseudocode):
while Loops
In order to avoid the cumbersome code of the preceding example, it would be useful to be able
to do something like this:
x = 1
while x <= 100:
print x
x += 1
name = ''
while not name:
name = raw_input('Please enter your name: ')
print 'Hello, %s!' % name
for Loops
words = ['this', 'is', 'an', 'ex', 'parrot']
for word in words:
◦ print word
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
for number in numbers:
◦ print number
>>> range(0, 10)
◦ [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
for number in range(1,101):
◦ print number
Iterating Over Dictionaries
To loop over the keys of a dictionary, you can use a plain for statement, just as you can with
sequences:
d = {'x': 1, 'y': 2, 'z': 3}
for key in d:
◦ print key, 'corresponds to', d[key]
for key, value in d.items():
◦ print key, 'corresponds to', value
for i in range(len(names)):
◦ print names[i], 'is', ages[i], 'years old
Numbered Iteration
for string in strings:
if 'xxx' in string:
◦ index = strings.index(string) # Search for the string in the list of strings
◦ strings[index] = '[censored]
index = 0
for string in strings:
◦ if 'xxx' in string:
◦ rings[index] = '[censored]‘
continue
or x in seq:
if condition1: continue
if condition2: continue
if condition3: continue
do_something()
do_something_else()
do_another_thing()
etc()
for x in seq:
if not (condition1 or condition2 or condition3):
◦ do_something()
◦ do_something_else()
◦ do_another_thing()
◦ etc()
The while True/break Idiom
word = 'dummy'
while word:
◦ word = raw_input('Please enter a word: ')
# do something with the word:
◦ print 'The word was ' + word
word = raw_input('Please enter a word: ')
while word:
# do something with the word:
◦ print 'The word was ' + word
◦ word = raw_input('Please enter a word: ')
while True:
◦ word = raw_input('Please enter a word: ')
◦ if not word: break
# do something with the word:
◦ print 'The word was ' + word
broke_out = False
for x in seq:
◦ do_something(x)
◦ if condition(x):
◦ broke_out = True
◦ break
◦ do_something_else(x)
◦ if not broke_out:
◦ print "I didn't break out!"
from math import sqrt
for n in range(99, 81, -1):
◦ root = sqrt(n)
◦ if root == int(root):
◦ print n
◦ break
◦ else:
◦ print "Didn't find it!"
List Comprehension
>>> [x*x for x in range(10)]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81
>>> [x*x for x in range(10) if x % 3 == 0]
[0, 9, 36, 81]
result = []
for x in range(3):
◦ for y in range(3)
result.append((x, y))
Abstraction
Fibonacci numbers (a series of numbers in which each number is the sum of the two previous
ones):
fibs = [0, 1]
for i in range(8):
◦ fibs.append(fibs[-2] + fibs[-1])
>>> fibs
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
fibs = [0, 1]
num = input('How many Fibonacci numbers do you want? ')
for i in range(num-2):
◦ fibs.append(fibs[-2] + fibs[-1])
◦ print fibs
Creating Your Own Functions
A function is something you can call (possibly with some parameters—the things you put in
the parentheses), which performs an action and returns a value
>>> import math
>>> x = 1
>>> y = math.sqrt
>>> callable(x)
False
>>> callable(y)
True
Scoping
>>> x = 1
>>> scope = vars()
>>> scope['x']
1
>>> scope['x'] += 1
>>> x
2
python chapter 1

Contenu connexe

Tendances

Implementing pseudo-keywords through Functional Programing
Implementing pseudo-keywords through Functional ProgramingImplementing pseudo-keywords through Functional Programing
Implementing pseudo-keywords through Functional ProgramingVincent Pradeilles
 
Python fundamentals - basic | WeiYuan
Python fundamentals - basic | WeiYuanPython fundamentals - basic | WeiYuan
Python fundamentals - basic | WeiYuanWei-Yuan Chang
 
2 BytesC++ course_2014_c2_ flow of control
2 BytesC++ course_2014_c2_ flow of control 2 BytesC++ course_2014_c2_ flow of control
2 BytesC++ course_2014_c2_ flow of control kinan keshkeh
 
第二讲 Python基礎
第二讲 Python基礎第二讲 Python基礎
第二讲 Python基礎juzihua1102
 
第二讲 预备-Python基礎
第二讲 预备-Python基礎第二讲 预备-Python基礎
第二讲 预备-Python基礎anzhong70
 
Haste (Same Language, Multiple Platforms) and Tagless Final Style (Same Synta...
Haste (Same Language, Multiple Platforms) and Tagless Final Style (Same Synta...Haste (Same Language, Multiple Platforms) and Tagless Final Style (Same Synta...
Haste (Same Language, Multiple Platforms) and Tagless Final Style (Same Synta...takeoutweight
 
Intro to OTP in Elixir
Intro to OTP in ElixirIntro to OTP in Elixir
Intro to OTP in ElixirJesse Anderson
 
An (Inaccurate) Introduction to Python
An (Inaccurate) Introduction to PythonAn (Inaccurate) Introduction to Python
An (Inaccurate) Introduction to PythonNicholas Tollervey
 
How to Become a Tree Hugger: Random Forests and Predictive Modeling for Devel...
How to Become a Tree Hugger: Random Forests and Predictive Modeling for Devel...How to Become a Tree Hugger: Random Forests and Predictive Modeling for Devel...
How to Become a Tree Hugger: Random Forests and Predictive Modeling for Devel...Matt Harrison
 
Analysis of Fatal Utah Avalanches with Python. From Scraping, Analysis, to In...
Analysis of Fatal Utah Avalanches with Python. From Scraping, Analysis, to In...Analysis of Fatal Utah Avalanches with Python. From Scraping, Analysis, to In...
Analysis of Fatal Utah Avalanches with Python. From Scraping, Analysis, to In...Matt Harrison
 
Template Haskell Tutorial
Template Haskell TutorialTemplate Haskell Tutorial
Template Haskell Tutorialkizzx2
 
Elixir & Phoenix – fast, concurrent and explicit
Elixir & Phoenix – fast, concurrent and explicitElixir & Phoenix – fast, concurrent and explicit
Elixir & Phoenix – fast, concurrent and explicitTobias Pfeiffer
 
Elixir & Phoenix – fast, concurrent and explicit
Elixir & Phoenix – fast, concurrent and explicitElixir & Phoenix – fast, concurrent and explicit
Elixir & Phoenix – fast, concurrent and explicitTobias Pfeiffer
 
Gareth hayes. non alphanumeric javascript-php and shared fuzzing
Gareth hayes. non alphanumeric javascript-php and shared fuzzingGareth hayes. non alphanumeric javascript-php and shared fuzzing
Gareth hayes. non alphanumeric javascript-php and shared fuzzingYury Chemerkin
 

Tendances (18)

1. python
1. python1. python
1. python
 
Implementing pseudo-keywords through Functional Programing
Implementing pseudo-keywords through Functional ProgramingImplementing pseudo-keywords through Functional Programing
Implementing pseudo-keywords through Functional Programing
 
Five
FiveFive
Five
 
Good Code
Good CodeGood Code
Good Code
 
Functional es6
Functional es6Functional es6
Functional es6
 
Python fundamentals - basic | WeiYuan
Python fundamentals - basic | WeiYuanPython fundamentals - basic | WeiYuan
Python fundamentals - basic | WeiYuan
 
2 BytesC++ course_2014_c2_ flow of control
2 BytesC++ course_2014_c2_ flow of control 2 BytesC++ course_2014_c2_ flow of control
2 BytesC++ course_2014_c2_ flow of control
 
第二讲 Python基礎
第二讲 Python基礎第二讲 Python基礎
第二讲 Python基礎
 
第二讲 预备-Python基礎
第二讲 预备-Python基礎第二讲 预备-Python基礎
第二讲 预备-Python基礎
 
Haste (Same Language, Multiple Platforms) and Tagless Final Style (Same Synta...
Haste (Same Language, Multiple Platforms) and Tagless Final Style (Same Synta...Haste (Same Language, Multiple Platforms) and Tagless Final Style (Same Synta...
Haste (Same Language, Multiple Platforms) and Tagless Final Style (Same Synta...
 
Intro to OTP in Elixir
Intro to OTP in ElixirIntro to OTP in Elixir
Intro to OTP in Elixir
 
An (Inaccurate) Introduction to Python
An (Inaccurate) Introduction to PythonAn (Inaccurate) Introduction to Python
An (Inaccurate) Introduction to Python
 
How to Become a Tree Hugger: Random Forests and Predictive Modeling for Devel...
How to Become a Tree Hugger: Random Forests and Predictive Modeling for Devel...How to Become a Tree Hugger: Random Forests and Predictive Modeling for Devel...
How to Become a Tree Hugger: Random Forests and Predictive Modeling for Devel...
 
Analysis of Fatal Utah Avalanches with Python. From Scraping, Analysis, to In...
Analysis of Fatal Utah Avalanches with Python. From Scraping, Analysis, to In...Analysis of Fatal Utah Avalanches with Python. From Scraping, Analysis, to In...
Analysis of Fatal Utah Avalanches with Python. From Scraping, Analysis, to In...
 
Template Haskell Tutorial
Template Haskell TutorialTemplate Haskell Tutorial
Template Haskell Tutorial
 
Elixir & Phoenix – fast, concurrent and explicit
Elixir & Phoenix – fast, concurrent and explicitElixir & Phoenix – fast, concurrent and explicit
Elixir & Phoenix – fast, concurrent and explicit
 
Elixir & Phoenix – fast, concurrent and explicit
Elixir & Phoenix – fast, concurrent and explicitElixir & Phoenix – fast, concurrent and explicit
Elixir & Phoenix – fast, concurrent and explicit
 
Gareth hayes. non alphanumeric javascript-php and shared fuzzing
Gareth hayes. non alphanumeric javascript-php and shared fuzzingGareth hayes. non alphanumeric javascript-php and shared fuzzing
Gareth hayes. non alphanumeric javascript-php and shared fuzzing
 

En vedette

Better Biz Dev – Music Startup Academy Denver - October 8, 2015
Better Biz Dev – Music Startup Academy Denver - October 8, 2015Better Biz Dev – Music Startup Academy Denver - October 8, 2015
Better Biz Dev – Music Startup Academy Denver - October 8, 2015Shawn Yeager
 
The SEO Value of Social Media - Catfish Comstock
The SEO Value of Social Media - Catfish ComstockThe SEO Value of Social Media - Catfish Comstock
The SEO Value of Social Media - Catfish ComstockOnline Marketing Summit
 
strengthening of steel structures with fiber reinforced polymers
strengthening of steel structures with fiber reinforced polymersstrengthening of steel structures with fiber reinforced polymers
strengthening of steel structures with fiber reinforced polymersKorrapati Pratyusha
 
Earned value management lecture 2009e my31
Earned value management lecture 2009e my31Earned value management lecture 2009e my31
Earned value management lecture 2009e my31rongo620
 
Iman bysajib hossain akash-01725-340978.
Iman bysajib hossain akash-01725-340978.Iman bysajib hossain akash-01725-340978.
Iman bysajib hossain akash-01725-340978.Sajib Hossain Akash
 
XING Q3 report 2012 english version
XING Q3 report 2012 english versionXING Q3 report 2012 english version
XING Q3 report 2012 english versionXING SE
 
Ths general biology unit 1 our environment living requirements notes_v1516
Ths general biology unit 1 our environment living requirements notes_v1516Ths general biology unit 1 our environment living requirements notes_v1516
Ths general biology unit 1 our environment living requirements notes_v1516rozeka01
 
Prasanth Kumar Nadh Dehydrogenase Subunit 1
Prasanth Kumar Nadh Dehydrogenase Subunit 1Prasanth Kumar Nadh Dehydrogenase Subunit 1
Prasanth Kumar Nadh Dehydrogenase Subunit 1Prasanthperceptron
 
Baiguullaga organition 2012
Baiguullaga organition 2012Baiguullaga organition 2012
Baiguullaga organition 2012oyundariubuns
 

En vedette (20)

Better Biz Dev – Music Startup Academy Denver - October 8, 2015
Better Biz Dev – Music Startup Academy Denver - October 8, 2015Better Biz Dev – Music Startup Academy Denver - October 8, 2015
Better Biz Dev – Music Startup Academy Denver - October 8, 2015
 
Coordenadas089 wifi
Coordenadas089 wifiCoordenadas089 wifi
Coordenadas089 wifi
 
The SEO Value of Social Media - Catfish Comstock
The SEO Value of Social Media - Catfish ComstockThe SEO Value of Social Media - Catfish Comstock
The SEO Value of Social Media - Catfish Comstock
 
strengthening of steel structures with fiber reinforced polymers
strengthening of steel structures with fiber reinforced polymersstrengthening of steel structures with fiber reinforced polymers
strengthening of steel structures with fiber reinforced polymers
 
B.j. mate i
B.j. mate iB.j. mate i
B.j. mate i
 
Sxsf
SxsfSxsf
Sxsf
 
Earned value management lecture 2009e my31
Earned value management lecture 2009e my31Earned value management lecture 2009e my31
Earned value management lecture 2009e my31
 
KHJL
KHJLKHJL
KHJL
 
Getumhe ekologi
Getumhe ekologiGetumhe ekologi
Getumhe ekologi
 
Iman bysajib hossain akash-01725-340978.
Iman bysajib hossain akash-01725-340978.Iman bysajib hossain akash-01725-340978.
Iman bysajib hossain akash-01725-340978.
 
Financial management
Financial managementFinancial management
Financial management
 
beckys new cv xxxx
beckys new cv xxxxbeckys new cv xxxx
beckys new cv xxxx
 
XING Q3 report 2012 english version
XING Q3 report 2012 english versionXING Q3 report 2012 english version
XING Q3 report 2012 english version
 
Ths general biology unit 1 our environment living requirements notes_v1516
Ths general biology unit 1 our environment living requirements notes_v1516Ths general biology unit 1 our environment living requirements notes_v1516
Ths general biology unit 1 our environment living requirements notes_v1516
 
ARICAP
ARICAPARICAP
ARICAP
 
CBA PP Branded
CBA PP BrandedCBA PP Branded
CBA PP Branded
 
OpenStack Havana Release
OpenStack Havana ReleaseOpenStack Havana Release
OpenStack Havana Release
 
Prasanth Kumar Nadh Dehydrogenase Subunit 1
Prasanth Kumar Nadh Dehydrogenase Subunit 1Prasanth Kumar Nadh Dehydrogenase Subunit 1
Prasanth Kumar Nadh Dehydrogenase Subunit 1
 
99 app
99 app99 app
99 app
 
Baiguullaga organition 2012
Baiguullaga organition 2012Baiguullaga organition 2012
Baiguullaga organition 2012
 

Similaire à python chapter 1

Learn 90% of Python in 90 Minutes
Learn 90% of Python in 90 MinutesLearn 90% of Python in 90 Minutes
Learn 90% of Python in 90 MinutesMatt Harrison
 
Introduction to Python Programming.ppt
Introduction to Python Programming.pptIntroduction to Python Programming.ppt
Introduction to Python Programming.pptUmeshKumarSingh31
 
Python elements list you can study .pdf
Python elements list you can study  .pdfPython elements list you can study  .pdf
Python elements list you can study .pdfAUNGHTET61
 
Python Variable Types, List, Tuple, Dictionary
Python Variable Types, List, Tuple, DictionaryPython Variable Types, List, Tuple, Dictionary
Python Variable Types, List, Tuple, DictionarySoba Arjun
 
Python Workshop - Learn Python the Hard Way
Python Workshop - Learn Python the Hard WayPython Workshop - Learn Python the Hard Way
Python Workshop - Learn Python the Hard WayUtkarsh Sengar
 
Python_Cheat_Sheet_Keywords_1664634397.pdf
Python_Cheat_Sheet_Keywords_1664634397.pdfPython_Cheat_Sheet_Keywords_1664634397.pdf
Python_Cheat_Sheet_Keywords_1664634397.pdfsagar414433
 
Python_Cheat_Sheet_Keywords_1664634397.pdf
Python_Cheat_Sheet_Keywords_1664634397.pdfPython_Cheat_Sheet_Keywords_1664634397.pdf
Python_Cheat_Sheet_Keywords_1664634397.pdfsagar414433
 
Python in 90mins
Python in 90minsPython in 90mins
Python in 90minsLarry Cai
 
Introduction to Python and TensorFlow
Introduction to Python and TensorFlowIntroduction to Python and TensorFlow
Introduction to Python and TensorFlowBayu Aldi Yansyah
 
Pythonlearn-08-Lists.pptx
Pythonlearn-08-Lists.pptxPythonlearn-08-Lists.pptx
Pythonlearn-08-Lists.pptxMihirDatir
 
Learning python
Learning pythonLearning python
Learning pythonFraboni Ec
 
Learning python
Learning pythonLearning python
Learning pythonJames Wong
 

Similaire à python chapter 1 (20)

Python Workshop
Python  Workshop Python  Workshop
Python Workshop
 
Learn 90% of Python in 90 Minutes
Learn 90% of Python in 90 MinutesLearn 90% of Python in 90 Minutes
Learn 90% of Python in 90 Minutes
 
Introduction to Python Programming.ppt
Introduction to Python Programming.pptIntroduction to Python Programming.ppt
Introduction to Python Programming.ppt
 
Python 101 1
Python 101   1Python 101   1
Python 101 1
 
Python elements list you can study .pdf
Python elements list you can study  .pdfPython elements list you can study  .pdf
Python elements list you can study .pdf
 
Python material
Python materialPython material
Python material
 
Python Variable Types, List, Tuple, Dictionary
Python Variable Types, List, Tuple, DictionaryPython Variable Types, List, Tuple, Dictionary
Python Variable Types, List, Tuple, Dictionary
 
Python Workshop - Learn Python the Hard Way
Python Workshop - Learn Python the Hard WayPython Workshop - Learn Python the Hard Way
Python Workshop - Learn Python the Hard Way
 
Python_Cheat_Sheet_Keywords_1664634397.pdf
Python_Cheat_Sheet_Keywords_1664634397.pdfPython_Cheat_Sheet_Keywords_1664634397.pdf
Python_Cheat_Sheet_Keywords_1664634397.pdf
 
Python_Cheat_Sheet_Keywords_1664634397.pdf
Python_Cheat_Sheet_Keywords_1664634397.pdfPython_Cheat_Sheet_Keywords_1664634397.pdf
Python_Cheat_Sheet_Keywords_1664634397.pdf
 
Python study material
Python study materialPython study material
Python study material
 
Python in 90mins
Python in 90minsPython in 90mins
Python in 90mins
 
Introduction to Python and TensorFlow
Introduction to Python and TensorFlowIntroduction to Python and TensorFlow
Introduction to Python and TensorFlow
 
Pythonlearn-08-Lists.pptx
Pythonlearn-08-Lists.pptxPythonlearn-08-Lists.pptx
Pythonlearn-08-Lists.pptx
 
Learning python
Learning pythonLearning python
Learning python
 
Learning python
Learning pythonLearning python
Learning python
 
Learning python
Learning pythonLearning python
Learning python
 
Learning python
Learning pythonLearning python
Learning python
 
Learning python
Learning pythonLearning python
Learning python
 
Learning python
Learning pythonLearning python
Learning python
 

Plus de Raghu nath

Ftp (file transfer protocol)
Ftp (file transfer protocol)Ftp (file transfer protocol)
Ftp (file transfer protocol)Raghu nath
 
Javascript part1
Javascript part1Javascript part1
Javascript part1Raghu nath
 
Regular expressions
Regular expressionsRegular expressions
Regular expressionsRaghu nath
 
Selection sort
Selection sortSelection sort
Selection sortRaghu nath
 
Binary search
Binary search Binary search
Binary search Raghu nath
 
JSON(JavaScript Object Notation)
JSON(JavaScript Object Notation)JSON(JavaScript Object Notation)
JSON(JavaScript Object Notation)Raghu nath
 
Stemming algorithms
Stemming algorithmsStemming algorithms
Stemming algorithmsRaghu nath
 
Step by step guide to install dhcp role
Step by step guide to install dhcp roleStep by step guide to install dhcp role
Step by step guide to install dhcp roleRaghu nath
 
Network essentials chapter 4
Network essentials  chapter 4Network essentials  chapter 4
Network essentials chapter 4Raghu nath
 
Network essentials chapter 3
Network essentials  chapter 3Network essentials  chapter 3
Network essentials chapter 3Raghu nath
 
Network essentials chapter 2
Network essentials  chapter 2Network essentials  chapter 2
Network essentials chapter 2Raghu nath
 
Network essentials - chapter 1
Network essentials - chapter 1Network essentials - chapter 1
Network essentials - chapter 1Raghu nath
 
Python chapter 2
Python chapter 2Python chapter 2
Python chapter 2Raghu nath
 
Linux Shell Scripting
Linux Shell ScriptingLinux Shell Scripting
Linux Shell ScriptingRaghu nath
 
Adv excel® 2013
Adv excel® 2013Adv excel® 2013
Adv excel® 2013Raghu nath
 

Plus de Raghu nath (20)

Mongo db
Mongo dbMongo db
Mongo db
 
Ftp (file transfer protocol)
Ftp (file transfer protocol)Ftp (file transfer protocol)
Ftp (file transfer protocol)
 
MS WORD 2013
MS WORD 2013MS WORD 2013
MS WORD 2013
 
Msword
MswordMsword
Msword
 
Ms word
Ms wordMs word
Ms word
 
Javascript part1
Javascript part1Javascript part1
Javascript part1
 
Regular expressions
Regular expressionsRegular expressions
Regular expressions
 
Selection sort
Selection sortSelection sort
Selection sort
 
Binary search
Binary search Binary search
Binary search
 
JSON(JavaScript Object Notation)
JSON(JavaScript Object Notation)JSON(JavaScript Object Notation)
JSON(JavaScript Object Notation)
 
Stemming algorithms
Stemming algorithmsStemming algorithms
Stemming algorithms
 
Step by step guide to install dhcp role
Step by step guide to install dhcp roleStep by step guide to install dhcp role
Step by step guide to install dhcp role
 
Network essentials chapter 4
Network essentials  chapter 4Network essentials  chapter 4
Network essentials chapter 4
 
Network essentials chapter 3
Network essentials  chapter 3Network essentials  chapter 3
Network essentials chapter 3
 
Network essentials chapter 2
Network essentials  chapter 2Network essentials  chapter 2
Network essentials chapter 2
 
Network essentials - chapter 1
Network essentials - chapter 1Network essentials - chapter 1
Network essentials - chapter 1
 
Python chapter 2
Python chapter 2Python chapter 2
Python chapter 2
 
Linux Shell Scripting
Linux Shell ScriptingLinux Shell Scripting
Linux Shell Scripting
 
Perl
PerlPerl
Perl
 
Adv excel® 2013
Adv excel® 2013Adv excel® 2013
Adv excel® 2013
 

Dernier

SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxAmanpreet Kaur
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docxPoojaSen20
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...Poonam Aher Patil
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxdhanalakshmis0310
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseAnaAcapella
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin ClassesCeline George
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxcallscotland1987
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 

Dernier (20)

SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptx
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 

python chapter 1

  • 2. $ python Running this command should start the interactive Python interpreter , with output similar to the following: Python 2.5.1 (r251:54869, Apr 18 2007, 22:08:04) [GCC 4.0.1 (Apple Computer, Inc. build 5367)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>>
  • 3. Package Manager: $apt-get install python Print “Hello, World!” Hello, Wordl! >>>
  • 4. Numbers and Expressions: The interactive Python interpreter can be used as a powerful calculator. >>> 2 + 2 >>> 53672 + 235253 288925
  • 5. Real numbers are called floats (or floating-point numbers ) in Python. If either one of the numbers in a division is a float, the result will be, too: >>> 1.0 / 2.0 0.5 >>> 1/2.0 0.5 >>> 1.0/2 0.5 >>> 1/2. 0.5
  • 6. 1 % 2 Variables you might want the name x to represent 3 . To make it so, simply execute the following >>> x = 3 This is called an assignment . We assign the value3 to the variable Another way of putting this is to say that we bind the variable to the value (or object) 3 After you’ve assigned a value to a variable, you can use the variable in expressions: >>> x * 2 6
  • 7. Statements >>> 2*2 4 >>> print 2*2 4 Getting Input from the User: >>> input("The meaning of life: ") The meaning of life: 42 42
  • 8. >>> x = input("x: ") x: 34 >>> y = input("y: ") y: 42 >>> print x * y 1428
  • 9. Functions >>> 2**3 8 >>> pow(2,3) 8 >>> 10 + pow(2, 3*5)/3.0 10932.666666666666 >>> abs(-10) 10 >>> 1/2 0 >>> round(1.0/2.0) 1.0
  • 10. Modules Import modules with a special command called (naturally enough) import >>> import math >>> math.floor(32.9) 32.0 >>> int(math.floor(32.9)) 32
  • 11. >>> from math import sqrt >>> sqrt(9) 3.0
  • 12. Comments The hash sign (# ) is a bit special in Python. When you put it in your code, everything to the right of it is ignored (which is why the Python interpreter didn’t choke on the /usr/bin/env stuff used earlier). Here is an example: # Print the circumference of the circle: print 2 * pi * radius
  • 13. # Get the user's name: user_name = raw_input("What is your name?") Strings: Now what was all that raw_input and "Hello, " + name + "!“ stuff about? Let’s tackle the "Hello" part first and leave raw_input for later. print "Hello, world!"
  • 14. Single Quoted Strings >>”Hello World” >>’Hello World’ Concatenating Strings >>”Let’s say” ‘”Hello,World” ‘Let’s say “Hello World!” X=“Hello” Y=“World” x y
  • 15. String Representation , str and repr >>>”Hello, World” ‘Hello, world’ 10000L >>>print “Heloo World” Hello, World! 10000
  • 16. Input vs. raw_input Name = input(“What is your name?”) Print “Hello,” + name+”!” Input(“Enter a number:”) Enter a number : 3 Raw_input(“Enter a number:”) Enter a number:3 3
  • 17. Long String Print ‘’’This is a very long string. It continues here. And it’s not over yet “Hello World!” Still here.’’’ Print “Hello, World!”
  • 18. Raw Strings >>>Print ‘Hello,n world!’ Hello, World! >>>Path = ‘C:nowhere’ >>>path ‘C:nowhere’
  • 19. Unicode Strings Unicode strings are stored as 16-bit Unicode. >>>u’Hello, World!’ U’Hello, World!’
  • 20. List and Tuple Data structure is a collection of data elements. >>Edward = [‘Edward Gumby’,42] Edward = [‘Edward Gumby’,42] John = [‘John Smith’,50] Database = [Edward,john] Database [[‘Edward Gumby’,42],[‘John Smith’,50]
  • 21. Indexing All elements in a sequence are numbered from 0 to upwards. Greeting = “Hello” Greeting[0] ‘H’ Note : A String is a sequence of characters. The index 0 refers to first element. Greeting[-1] = ‘o’
  • 23. Slicing Indexing to access individual elements. You can use slicing to access ranges of elements. You can do this by using two indices, separated by a colon: >>tag = ‘<a href=http://www.python.org>Python web site</a>’ >>tag[9:30] ‘http://www.python.org’ >>tag[32:-4] ‘Python web site’
  • 29. Deleting Elements Names = [‘Alice’,’Beth’,’Cecil’,’Dee-Dee’,’Earl’] Del Names[2] Names [‘Alice’,’Beth’,’Cecil’]
  • 30. List methods Object.method(arguments) Append : The append method is used to append an object to the end of a list: Lst = [1,2,3] Lst.append(4) Lst [1,2,3,4]
  • 31. Count The count method counts the occurences of an element in the list >>[‘to’,’be’,’or’,’not’,’to’,’be’].count(‘to’) 2 >>X=[[1,2],1,1,[2,1,[1,2]]] X.count(1) 2 >> X.count([1,2])
  • 32. index The index method is used for searching lists to find the index of the first Occurrence of a value: >> knights = [‘we’,’are’,’the’,’knings’,’who’,’say’,’ni’] >>>knights.index(‘who’) 4 >>knights[4] ‘who’
  • 33. insert The insert method is used to insert an object into a list: >>> numbers = [1,2,3,4,5,6,7] >>>numbers.insert(3,’four’) >>>numbers [1,2,3,’four’,5,6,7]
  • 34. pop The pop method removes an element (by default, the last one) from the list and returns it: >>>x=[1,2,3] >>>x.pop() 3 >>>x [1,2] >>>x.pop(0) 1 >>>x [2]
  • 36. remove The remove method is used to remove >>>x = [‘to’,’be’,’or’,’not’,’to’,’be’] >>>x.remove(‘be’) >>>x
  • 43. Working with Strings: >>>website = ‘http://www.python.org’ >>>website[-3:] = ‘com’
  • 44. String Formatting >>>format = “Hello, %s.%s enough for ya?” >>>values = (‘world’,’Hot’) >>>print format % values Hello,World. Hot enough for ya?
  • 45. >>> 'Price of eggs: $%d' % 42 'Price of eggs: $42' >>> 'Hexadecimal price of eggs: %x' % 42 'Hexadecimal price of eggs: 2a' >>> from math import pi >>> 'Pi: %f...' % pi 'Pi: 3.141593...' >>> 'Very inexact estimate of pi: %i' % pi 'Very inexact estimate of pi: 3' >>> 'Using str: %s' % 42L 'Using str: 42' >>> 'Using repr: %r' % 42L 'Using repr: 42L
  • 46. find The find method finds a substring within a larger string. It returns the leftmost index where the substring is found. If it is not found, –1 is returned: >>> 'With a moo-moo here, and a moo-moo there'.find('moo') 7 >>> title = "Monty Python's Flying Circus" >>> title.find('Monty') 0
  • 47. join A very important string method, join is the inverse of split . It is used to join the elements of a Sequence. >>> seq = [1, 2, 3, 4, 5] >>> sep = '+' >>> sep.join(seq
  • 48. lower The lower method returns a lowercase version of the string: >>> 'Trondheim Hammer Dance'.lower() 'trondheim hammer dance >>> if 'Gumby' in ['gumby', 'smith', 'jones']: print 'Found it!
  • 49. replace The replace method returns a string where all the occurrences of one string have been replaced by another: >>> 'This is a test'.replace('is', 'eez') 'Theez eez a test
  • 50. split A very important string method, split is the inverse of join , and is used to split a string into a sequence: >>> '1+2+3+4+5'.split('+') ['1', '2', '3', '4', '5'] >>> '/usr/bin/env'.split('/') ['', 'usr', 'bin', 'env'] >>> 'Using the default'.split() ['Using', 'the', 'default']
  • 51. strip The strip method returns a string where whitespace on the left and right (but not internally) has been stripped (removed):
  • 52. >>> ' internal whitespace is kept '.strip() 'internal whitespace is kept‘ As with lower , strip can be useful when comparing input to stored values. Let’s return to the user name example from the section on lower , and let’s say that the user inadvertently types a space after his name: >>> names = ['gumby', 'smith', 'jones'] >>> name = 'gumby ' >>> if name in names: print 'Found it!' ...
  • 53. >>> if name.strip() in names: print 'Found it!' ... Found it! >>>
  • 54. Dictionaries Data structure in which you can refer to each value by name. This type of structure is called a mapping. The only built-in mapping type in Python is the dictionary.
  • 55. Dictionary Uses: A dictionary is more appropriate than a list in many situations. Here are some examples of uses of Python dictionaries: • Representing the state of a game board, with each key being a tuple of coordinates • Storing file modification times, with file names as keys • A digital telephone/address book Let’s say you have a list of people: >>> names = ['Alice', 'Beth', 'Cecil', 'Dee-Dee', 'Earl']
  • 56. Creating and Using Dictionaries Dictionaries are written like this: phonebook = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'} Note Keys are unique within a dictionary (and any other kind of mapping). Values do not need to be unique within a dictionary.
  • 57. The dict Function You can use the dict function 1 to construct dictionaries from other mappings (for example, other dictionaries) orfrom sequences of (key, value) pairs. >>> items = [('name', 'Gumby'), ('age', 42)] >>> d = dict(items) >>> d {'age': 42, 'name': 'Gumby'} >>> d['name'] 'Gumby
  • 58. Dictionary Methods Clear The clear method removes all items from the dictionary. This is an In-place operation (like list.sort ), so it returns nothing (or, rather, None) >>> d = {} >>> d['name'] = 'Gumby' >>> d['age'] = 42 >>> d {'age': 42, 'name': 'Gumby'}
  • 59. >>> returned_value = d.clear() >>> d {} >>> print returned_value None
  • 60. >>> x = {} >>> y = x >>> x['key'] = 'value' >>> y {'key': 'value'} >>> x = {} >>> y {'key': 'value'}
  • 61. copy The copy method returns a new dictionary with the same key-value pairs (a shallow copy , since the values themselves are the same , not copies): >>> x = {'username': 'admin', 'machines': ['foo', 'bar', 'baz']} >>> y = x.copy() >>> y['username'] = 'mlh' >>> y['machines'].remove('bar') >>> y
  • 62. Deepcopy >>> from copy import deepcopy >>> d = {} >>> d['names'] = ['Alfred', 'Bertrand'] >>> c = d.copy() >>> dc = deepcopy(d) >>> d['names'].append('Clive') >>> c {'names': ['Alfred', 'Bertrand', 'Clive']} >>> dc {'names': ['Alfred', 'Bertrand']}
  • 63. fromkeys The fromkeys method creates a new dictionary with the given keys, each with a default corre- sponding value of None: >>> {}.fromkeys(['name', 'age']) {'age': None, 'name': None}
  • 64. get The get method is a forgiving way of accessing dictionary items. Ordinarily, when you try to access an item that is not present in the dictionary, things go very wrong: >>> d = {} >>> print d['name'] Traceback (most recent call last): File "<stdin>", line 1, in ? KeyError: 'name
  • 65. has_key The has_key method checks whether a dictionary has a given key. The expression d.has_key(k) is equivalent to k in d . The choice of which to use is largely a matter of taste, although has_key is on its way out of the language (it will be gone in Python 3.0). Here is an example of how you might use has_key
  • 66. >>> d = {} >>> d.has_key('name') False >>> d['name'] = 'Eric' >>> d.has_key('name') True
  • 67. items and iteritems The items method returns all the items of the dictionary as a list of items in which each item is of the form (key, value) . The items are not returned in any particular order: >>> d = {'title': 'Python Web Site', 'url': 'http://www.python.org', 'spam': 0} >>> d.items() [('url', 'http://www.python.org'), ('spam', 0), ('title', 'Python Web Site')]
  • 68. Pop The pop method can be used to get the value corresponding to a given key, and then remove the key-value pair from the dictionary: >>> d = {'x': 1, 'y': 2} >>> d.pop('x') 1 >>> d {'y': 2}
  • 69. Popiem The popitem method is similar to list.pop , which pops off the last element of a list. Unlike list.pop , however, popitem pops off an arbitrary item because dictionaries don’t have a “last element” or any order whatsoever. This may be very useful if you want to remove and process the items one by one in an efficient way (without retrieving a list of the keys first): >>> d {'url': 'http://www.python.org', 'spam': 0, 'title': 'Python Web Site'} >>> d.popitem() ('url', 'http://www.python.org') >>> d {'spam': 0, 'title': 'Python Web Site'}
  • 70. Setdefault The setdefault method is somewhat similar to get , in that it retrieves a value associated with a given key. In addition to the get functionality, setdefault sets the value corresponding to the given key if it is not a lready in the dictionary: >>> d = {} >>> d.setdefault('name', 'N/A') 'N/A
  • 71. >>> d {'name': 'N/A'} >>> d['name'] = 'Gumby' >>> d.setdefault('name', 'N/A') 'Gumby' >>> d {'name': 'Gumby'}
  • 72. update The update method updates one dictionary with the items of another: >>> d = { 'title': 'Python Web Site', 'url': 'http://www.python.org', 'changed': 'Mar 14 22:09:15 MET 2008' } >>> x = {'title': 'Python Language Website'} >>> d.update(x) >>> d {'url': 'http://www.python.org', 'changed': 'Mar 14 22:09:15 MET 2008', 'title': 'Python Language Website'}
  • 73. values and iter values The values method returns a list of the values in the dictionary (and itervalues returns an iterator of the values). Unlike keys , the list returned by values may contain duplicates: >>> d = {} >>> d[1] = 1 >>> d[2] = 2 >>> d[3] = 3 >>> d[4] = 1 >>> d.values() [1, 2, 3, 1]
  • 74. Conditions and Conditional Statements The following values are considered by the interpreter to mean false when evaluated as a Boolean expression (for example, as the condition of an if statement): False None 0 "" () [] {} >>> True True >>> False False >>> True == 1 True >>> False == 0 True >>> True + False + 42 43
  • 75. Conditional Execution and the if Statement Truth values can be combined (which you’ll see in a while), but let’s first see what you can use them for. Try running the following script: name = raw_input('What is your name? ') if name.endswith('Gumby'): print 'Hello, Mr. Gumby
  • 76. else Clauses In the example from the previous section, if you enter a name that ends with “Gumby,” the method name.endswith returns True , making the If statement enter the block, and the greeting
  • 77. is printed. If you want, you can add an alternative, with the else clause (called a clause because it isn’t really a separate statement, just a part of the if statement): name = raw_input('What is your name? ') if name.endswith('Gumby'): print 'Hello, Mr. Gumby' else: print 'Hello, stranger
  • 78. elif Clauses If you want to check for several conditions, you can use elif , which is short for “else if.” It is a combination of an if clause and an else clause—an else clause with a condition: num = input('Enter a number: ') if num > 0: print 'The number is positive' elif num < 0: print 'The number is negative' else: print 'The number is zero
  • 79. Nesting Blocks Let’s throw in a few bells and whistles. You can have if statements inside other if statement blocks, as follows: name = raw_input('What is your name? ') if name.endswith('Gumby'): if name.startswith('Mr.'): print 'Hello, Mr. Gumby' elif name.startswith('Mrs.'): print 'Hello, Mrs. Gumby' else: print 'Hello, Gumby' else: print 'Hello, stranger'
  • 80. The Equality Operator If you want to know if two things are equal, use the equality operator, written as a double equality sign, == : >>> "foo" == "foo" True >>> "foo" == "bar" False
  • 81. is: The Identity Operator The is operator is interesting. It seems to work just like == , but it doesn’t: >>> x = y = [1, 2, 3] >>> z = [1, 2, 3] >>> x == y True
  • 82. in: The Membership Operator I have already introduced the in operator (in Chapter 2, in the section “Membership”). It can be used in conditions, just like all the other comp arison operators: name = raw_input('What is your name? ') if 's' in name: print 'Your name contains the letter "s".' else: print 'Your name does not contain the letter "s".
  • 83. Boolean Operators number = input('Enter a number between 1 and 10: ') if number <= 10: if number >= 1: print 'Great!' else: print 'Wrong!' else: print 'Wrong!
  • 84. number = input('Enter a number between 1 and 10: ') if number <= 10 and number >= 1: print 'Great!' else: print 'Wrong!
  • 85. Assertions There is a useful relative of the if statement, which works more or less like this (pseudocode): if not condition: crash program
  • 86. Loops Now you know how to do something if a condition is true (or false), but how do you do some- thing several times? For example, you might wan t to create a program tha t reminds you to pay the rent every month, but with the tools we have looked at until now, you would need to write the program like this (pseudocode):
  • 87. while Loops In order to avoid the cumbersome code of the preceding example, it would be useful to be able to do something like this: x = 1 while x <= 100: print x x += 1
  • 88. name = '' while not name: name = raw_input('Please enter your name: ') print 'Hello, %s!' % name
  • 89. for Loops words = ['this', 'is', 'an', 'ex', 'parrot'] for word in words: ◦ print word numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] for number in numbers: ◦ print number
  • 90. >>> range(0, 10) ◦ [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> range(10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] for number in range(1,101): ◦ print number
  • 91. Iterating Over Dictionaries To loop over the keys of a dictionary, you can use a plain for statement, just as you can with sequences: d = {'x': 1, 'y': 2, 'z': 3} for key in d: ◦ print key, 'corresponds to', d[key]
  • 92. for key, value in d.items(): ◦ print key, 'corresponds to', value for i in range(len(names)): ◦ print names[i], 'is', ages[i], 'years old
  • 93. Numbered Iteration for string in strings: if 'xxx' in string: ◦ index = strings.index(string) # Search for the string in the list of strings ◦ strings[index] = '[censored] index = 0 for string in strings: ◦ if 'xxx' in string: ◦ rings[index] = '[censored]‘
  • 94. continue or x in seq: if condition1: continue if condition2: continue if condition3: continue do_something() do_something_else() do_another_thing() etc()
  • 95. for x in seq: if not (condition1 or condition2 or condition3): ◦ do_something() ◦ do_something_else() ◦ do_another_thing() ◦ etc()
  • 96. The while True/break Idiom word = 'dummy' while word: ◦ word = raw_input('Please enter a word: ') # do something with the word: ◦ print 'The word was ' + word
  • 97. word = raw_input('Please enter a word: ') while word: # do something with the word: ◦ print 'The word was ' + word ◦ word = raw_input('Please enter a word: ')
  • 98. while True: ◦ word = raw_input('Please enter a word: ') ◦ if not word: break # do something with the word: ◦ print 'The word was ' + word
  • 99. broke_out = False for x in seq: ◦ do_something(x) ◦ if condition(x): ◦ broke_out = True ◦ break ◦ do_something_else(x) ◦ if not broke_out: ◦ print "I didn't break out!"
  • 100. from math import sqrt for n in range(99, 81, -1): ◦ root = sqrt(n) ◦ if root == int(root): ◦ print n ◦ break ◦ else: ◦ print "Didn't find it!"
  • 101. List Comprehension >>> [x*x for x in range(10)] [0, 1, 4, 9, 16, 25, 36, 49, 64, 81 >>> [x*x for x in range(10) if x % 3 == 0] [0, 9, 36, 81] result = [] for x in range(3): ◦ for y in range(3) result.append((x, y))
  • 102. Abstraction Fibonacci numbers (a series of numbers in which each number is the sum of the two previous ones): fibs = [0, 1] for i in range(8): ◦ fibs.append(fibs[-2] + fibs[-1])
  • 103. >>> fibs [0, 1, 1, 2, 3, 5, 8, 13, 21, 34] fibs = [0, 1] num = input('How many Fibonacci numbers do you want? ') for i in range(num-2): ◦ fibs.append(fibs[-2] + fibs[-1]) ◦ print fibs
  • 104. Creating Your Own Functions A function is something you can call (possibly with some parameters—the things you put in the parentheses), which performs an action and returns a value >>> import math >>> x = 1 >>> y = math.sqrt >>> callable(x) False >>> callable(y) True
  • 105. Scoping >>> x = 1 >>> scope = vars() >>> scope['x'] 1 >>> scope['x'] += 1 >>> x 2