pdf first page to image c# : Build pdf forms software application cloud windows html web page class Automate%20the%20Boring%20Stuff%20with%20Python%20(2015)13-part1601

Dictionaries and Structuring Data 
107
u birthdays = {'Alice': 'Apr 1', 'Bob': 'Dec 12', 'Carol': 'Mar 4'}
while True:
print('Enter a name: (blank to quit)')
name = input()
if name == '':
break
    if name in birthdays:
        print(birthdays[name] + ' is the birthday of ' + name)
else:
print('I do not have birthday information for ' + name)
print('What is their birthday?')
bday = input()
        birthdays[name] = bday
print('Birthday database updated.')
You create an initial dictionary and store it in 
birthdays
u. You can see 
if the entered name exists as a key in the dictionary with the 
in
keyword v, 
just as you did for lists. If the name is in the dictionary, you access the asso-
ciated value using square brackets w; if not, you can add it using the same 
square bracket syntax combined with the assignment operator x.
When you run this program, it will look like this:
Enter a name: (blank to quit)
Alice
Apr 1 is the birthday of Alice
Enter a name: (blank to quit)
Eve
I do not have birthday information for Eve
What is their birthday?
Dec 5
Birthday database updated.
Enter a name: (blank to quit)
Eve
Dec 5 is the birthday of Eve
Enter a name: (blank to quit)
Of course, all the data you enter in this program is forgotten when the 
program terminates. You’ll learn how to save data to files on the hard drive 
in Chapter 8.
The keys(), values(), and items() Methods
There are three dictionary methods that will return list-like values of the 
dictionary’s keys, values, or both keys and values: 
keys()
values()
, and 
items()
The values returned by these methods are not true lists: They cannot be 
modified and do not have an 
append()
method. But these data types (
dict_keys
Build pdf forms - C# PDF Field Edit Library: insert, delete, update pdf form field in C#.net, ASP.NET, MVC, Ajax, WPF
Online C# Tutorial to Insert, Delete and Update Fields in PDF Document
cannot edit pdf form; create a pdf form to fill out
Build pdf forms - VB.NET PDF Field Edit library: insert, delete, update pdf form field in vb.net, ASP.NET, MVC, Ajax, WPF
How to Insert, Delete and Update Fields in PDF Document with VB.NET Demo Code
allow saving of pdf form; pdf editable fields
108   
Chapter 5
dict_values
, and 
dict_items
, respectively) can be used in 
for
loops. To see 
how these methods work, enter the following into the interactive shell:
>>> spam = {'color': 'red', 'age': 42}
>>> for v in spam.values():
print(v)
red
42
Here, a 
for
loop iterates over each of the values in the 
spam
dictionary. 
for
loop can also iterate over the keys or both keys and values:
>>> for k in spam.keys():
print(k)
color
age
>>> for i in spam.items():
print(i)
('color', 'red')
('age', 42)
Using the 
keys()
values()
, and 
items()
methods, a 
for
loop can iterate 
over the keys, values, or key-value pairs in a dictionary, respectively. Notice 
that the values in the 
dict_items
value returned by the 
items()
method are 
tuples of the key and value.
If you want a true list from one of these methods, pass its list-like return 
value to the 
list()
function. Enter the following into the interactive shell:
>>> spam = {'color': 'red', 'age': 42}
>>> spam.keys()
dict_keys(['color', 'age'])
>>> list(spam.keys())
['color', 'age']
The 
list(spam.keys())
line takes the 
dict_keys
value returned from 
keys()
and passes it to 
list()
, which then returns a list value of 
['color', 'age']
.
You can also use the multiple assignment trick in a 
for
loop to assign 
the key and value to separate variables. Enter the following into the inter-
active shell:
>>> spam = {'color': 'red', 'age': 42}
>>> for k, v in spam.items():
print('Key: ' + k + ' Value: ' + str(v))
Key: age Value: 42
Key: color Value: red
VB.NET Create PDF from images Library to convert Jpeg, png images
It enables you to build a PDF file with one or more images. Various image forms are supported which include Png, Jpeg, Bmp, and Gif raster images and .NET
adding form fields to pdf files; create a pdf form in word
C# Image: How to Process Form in C# Project with .NET Image
Build a C# Application for Form Processing and for ASP.NET AJAX, Silverlight, Windows Forms as well powerful & profession imaging controls, PDF document, tiff
cannot save pdf form in reader; convert word doc to pdf with editable fields
Dictionaries and Structuring Data 
109
Checking Whether a Key or Value Exists in a Dictionary
Recall from the previous chapter that the 
in
and 
not in
operators can check 
whether a value exists in a list. You can also use these operators to see whether 
a certain key or value exists in a dictionary. Enter the following into the 
interactive shell:
>>> spam = {'name': 'Zophie', 'age': 7}
>>> 'name' in spam.keys()
True
>>> 'Zophie' in spam.values()
True
>>> 'color' in spam.keys()
False
>>> 'color' not in spam.keys()
True
>>> 'color' in spam
False
In the previous example, notice that 
'color' in spam
is essentially a 
shorter version of writing 
'color' in spam.keys()
. This is always the case: If 
you ever want to check whether a value is (or isn’t) a key in the dictionary, you 
can simply use the 
in
(or 
not in
) keyword with the dictionary value itself.
The get() Method
It’s tedious to check whether a key exists in a dictionary before accessing 
that key’s value. Fortunately, dictionaries have a 
get()
method that takes two 
arguments: the key of the value to retrieve and a fallback value to return if 
that key does not exist.
Enter the following into the interactive shell:
>>> picnicItems = {'apples': 5, 'cups': 2}
>>> 'I am bringing ' + str(picnicItems.get('cups', 0)) + ' cups.'
'I am bringing 2 cups.'
>>> 'I am bringing ' + str(picnicItems.get('eggs', 0)) + ' eggs.'
'I am bringing 0 eggs.'
Because there is no 
'eggs'
key in the 
picnicItems
dictionary, the default 
value 
0
is returned by the 
get()
method. Without using 
get()
, the code 
would have caused an error message, such as in the following example:
>>> picnicItems = {'apples': 5, 'cups': 2}
>>> 'I am bringing ' + str(picnicItems['eggs']) + ' eggs.'
Traceback (most recent call last):
File "<pyshell#34>", line 1, in <module>
'I am bringing ' + str(picnicItems['eggs']) + ' eggs.'
KeyError: 'eggs'
VB.NET Word: VB Code to Create Windows Word Viewer | Online
contains functionalities that can be embedded within .NET Windows Forms applications to Developers can refer to the example to build Windows-based Viewer for
create a pdf form online; convert word document to editable pdf form
C# Word: How to Create C# Word Windows Viewer with .NET DLLs
You can also Build C# Word Mobile Viewer in for ASP.NET AJAX, Silverlight, Windows Forms as well as powerful & profession imaging controls, PDF document, tiff
build pdf forms; pdf form creator
110   
Chapter 5
The setdefault() Method
You’ll often have to set a value in a dictionary for a certain key only if that 
key does not already have a value. The code looks something like this:
spam = {'name': 'Pooka', 'age': 5}
if 'color' not in spam:
spam['color'] = 'black'
The 
setdefault()
method offers a way to do this in one line of code. The 
first argument passed to the method is the key to check for, and the second 
argument is the value to set at that key if the key does not exist. If the key 
does exist, the 
setdefault()
method returns the key’s value. Enter the follow-
ing into the interactive shell:
>>> spam = {'name': 'Pooka', 'age': 5}
>>> spam.setdefault('color', 'black')
'black'
>>> spam
{'color': 'black', 'age': 5, 'name': 'Pooka'}
>>> spam.setdefault('color', 'white')
'black'
>>> spam
{'color': 'black', 'age': 5, 'name': 'Pooka'}
The first time 
setdefault()
is called, the dictionary in 
spam
changes 
to 
{'color': 'black', 'age': 5, 'name': 'Pooka'}
. The method returns the 
value 
'black'
because this is now the value set for the key 
'color'
. When 
spam.setdefault('color', 'white')
is called next, the value for that key is not 
changed to 
'white'
because 
spam
already has a key named 
'color'
.
The 
setdefault()
method is a nice shortcut to ensure that a key exists. 
Here is a short program that counts the number of occurrences of each let-
ter in a string. Open the file editor window and enter the following code, 
saving it as characterCount.py:
message = 'It was a bright cold day in April, and the clocks were striking thirteen.'
count = {}
for character in message:
count.setdefault(character, 0)
count[character] = count[character] + 1
print(count)    
The program loops over each character in the 
message
variable’s string, 
counting how often each character appears. The 
setdefault()
method call 
ensures that the key is in the 
count
dictionary (with a default value of 
0
)
C# Create PDF from images Library to convert Jpeg, png images to
It enables you to build a PDF file with one or more images. Various image forms are supported which include Png, Jpeg, Bmp, and Gif raster images, .NET Graphics
chrome save pdf form; android edit pdf forms
C# Image: How to Deploy .NET Imaging SDK in Visual C# Applications
RasterEdge.Imaging.MSWordDocx.dll; RasterEdge.Imaging.PDF.dll; NET Image SDK in Windows Forms application is between platform target property and the dlls build.
add fillable fields to pdf; adding form fields to pdf
Dictionaries and Structuring Data 
111
so the program doesn’t throw a 
KeyError
error when 
count[character] = 
count[character] + 1
is executed. When you run this program, the output 
will look like this:
{' ': 13, ',': 1, '.': 1, 'A': 1, 'I': 1, 'a': 4, 'c': 3, 'b': 1, 'e': 5, 'd': 3, 'g': 2, 'i': 
6, 'h': 3, 'k': 2, 'l': 3, 'o': 2, 'n': 4, 'p': 1, 's': 3, 'r': 5, 't': 6, 'w': 2, 'y': 1}
From the output, you can see that the lowercase letter c appears 3 times, 
the space character appears 13 times, and the uppercase letter A appears 
1 time. This program will work no matter what string is inside the 
message
variable, even if the string is millions of characters long!
Pretty Printing
If you import the 
pprint
module into your programs, you’ll have access to 
the 
pprint()
and 
pformat()
functions that will “pretty print” a dictionary’s 
values. This is helpful when you want a cleaner display of the items in a 
dictionary than what 
print()
provides. Modify the previous characterCount.py 
program and save it as prettyCharacterCount.py.
import pprint
message = 'It was a bright cold day in April, and the clocks were striking 
thirteen.'
count = {}
for character in message:
count.setdefault(character, 0)
count[character] = count[character] + 1
pprint.pprint(count)
This time, when the program is run, the output looks much cleaner, 
with the keys sorted.
{' ': 13,
',': 1,
'.': 1,
'A': 1,
'I': 1,
'a': 4,
'b': 1,
'c': 3,
'd': 3,
'e': 5,
'g': 2,
'h': 3,
'i': 6,
C# Word - Word Create or Build in C#.NET
C# Word - Word Create or Build in C#.NET. in all .NET developing applications, including ASP.NET web services and Windows Forms application Create Word From PDF.
add fields to pdf; adding text fields to pdf
VB.NET TIFF: Examples to Create VB.NET TIFF Document Viewer in .
VB.NET: Build TIFF Web Viewer, Windows Viewer and ASP.NET AJAX, Silverlight, Windows Forms as well powerful & profession imaging controls, PDF document, image
adding images to pdf forms; add attachment to pdf form
112   
Chapter 5
'k': 2,
'l': 3,
'n': 4,
'o': 2,
'p': 1,
'r': 5,
's': 3,
't': 6,
'w': 2,
'y': 1}
The 
pprint.pprint()
function is especially helpful when the dictionary 
itself contains nested lists or dictionaries.
If you want to obtain the prettified text as a string value instead of dis-
playing it on the screen, call 
pprint.pformat()
instead. These two lines are 
equivalent to each other:
pprint.pprint(someDictionaryValue)
print(pprint.pformat(someDictionaryValue))
using data Structures to model real-world things
Even before the Internet, it was possible to play a game of chess with some-
one on the other side of the world. Each player would set up a chessboard at 
their home and then take turns mailing a postcard to each other describing 
each move. To do this, the players needed a way to unambiguously describe 
the state of the board and their moves.
In algebraic chess notation, the spaces on the chessboard are identified by 
a number and letter coordinate, as in Figure 5-1.
a
b
1
2
3
4
5
6
7
8
c
d
e
f
g
h
a1
a2
a3
a4
b1
b2
b3
b4
c1
c2
c3
c4
d1
d2
d3
d4
g5
Figure 5-1: The coordinates of  
a chessboard in algebraic chess  
notation
The chess pieces are identified by letters: K for king, Q for queen, R for 
rook, B for bishop, and N for knight. Describing a move uses the letter of the 
piece and the coordinates of its destination. A pair of these moves describes 
VB.NET Word: How to Create Word Online Web Viewer in VB.NET
We will build an ASP.NET web site in VS for your imaging program content and imaging solutions, available for ASP.NET AJAX, Silverlight, Windows Forms as well
change font size pdf form reader; allow users to save pdf form
VB.NET Word: Build A VB Project to Convert Word Document to BMP
available for ASP.NET AJAX, Silverlight, Windows Forms as well as WPF. We are dedicated to provide powerful & profession imaging controls, PDF document, tiff
pdf forms save; add an image to a pdf form
Dictionaries and Structuring Data 
113
what happens in a single turn (with white going first); for instance, the 
notation 2. Nf3 Nc6 indicates that white moved a knight to f3 and black 
moved a knight to c6 on the second turn of the game.
There’s a bit more to algebraic notation than this, but the point is that 
you can use it to unambiguously describe a game of chess without needing 
to be in front of a chessboard. Your opponent can even be on the other side 
of the world! In fact, you don’t even need a physical chess set if you have a 
good memory: You can just read the mailed chess moves and update boards 
you have in your imagination.
Computers have good memories. A program on a modern computer 
can easily store billions of strings like 
'2. Nf3 Nc6'
. This is how computers can 
play chess without having a physical chessboard. They model data to repre-
sent a chessboard, and you can write code to work with this model.
This is where lists and dictionaries can come in. You can use them to 
model real-world things, like chessboards. For the first example, you’ll use 
 game that’s a little simpler than chess: tic-tac-toe.
A Tic-Tac-Toe Board
A tic-tac-toe board looks like a large hash 
symbol (#) with nine slots that can each 
contain an X, an O, or a blank. To repre-
sent the board with a dictionary, you can 
assign each slot a string-value key, as shown 
in Figure 5-2. 
You can use string values to represent 
what’s in each slot on the board: 
'X'
'O'
, or 
' '
(a space character). Thus, you’ll need 
to store nine strings. You can use a diction-
ary of values for this. The string value with 
the key 
'top-R'
can represent the top-right 
corner, the string value with the key 
'low-L'
can represent the bottom-left corner, the 
string value with the key 
'mid-M'
can repre-
sent the middle, and so on.
This dictionary is a data structure that represents a tic-tac-toe board. 
Store this board-as-a-dictionary in a variable named 
theBoard
. Open a 
new file editor window, and enter the following source code, saving it as 
ticTacToe.py:
theBoard = {'top-L': ' ', 'top-M': ' ', 'top-R': ' ',
'mid-L': ' ', 'mid-M': ' ', 'mid-R': ' ',
'low-L': ' ', 'low-M': ' ', 'low-R': ' '}
The data structure stored in the 
theBoard
variable represents the tic-tac-
toe board in Figure 5-3.
'low-L'
'low-M'
'low-R'
'mid-L'
'mid-M'
'mid-R'
'top-L'
'top-M'
'top-R'
Figure 5-2: The slots of a tic-tac-
toe board with their correspond-
ing keys
114   
Chapter 5
Figure 5-3: An empty tic-tac-toe board
Since the value for every key in 
theBoard
is a single-space string, this 
dictionary represents a completely clear board. If player X went first and 
chose the middle space, you could represent that board with this dictionary:
theBoard = {'top-L': ' ', 'top-M': ' ', 'top-R': ' ',
'mid-L': ' ', 'mid-M': 'X', 'mid-R': ' ',
'low-L': ' ', 'low-M': ' ', 'low-R': ' '}
The data structure in 
theBoard
now represents the tic-tac-toe board in 
Figure 5-4.
Figure 5-4: The first move
A board where player O has won by placing Os across the top might 
look like this:
theBoard = {'top-L': 'O', 'top-M': 'O', 'top-R': 'O',
'mid-L': 'X', 'mid-M': 'X', 'mid-R': ' ',
'low-L': ' ', 'low-M': ' ', 'low-R': 'X'}
The data structure in 
theBoard
now represents the tic-tac-toe board in 
Figure 5-5.
Dictionaries and Structuring Data 
115
Figure 5-5: Player O wins.
Of course, the player sees only what is printed to the screen, not the 
contents of variables. Let’s create a function to print the board dictionary 
onto the screen. Make the following addition to ticTacToe.py (new code is in 
bold):
theBoard = {'top-L': ' ', 'top-M': ' ', 'top-R': ' ',
'mid-L': ' ', 'mid-M': ' ', 'mid-R': ' ',
'low-L': ' ', 'low-M': ' ', 'low-R': ' '}
def printBoard(board):
print(board['top-L'] + '|' + board['top-M'] + '|' + board['top-R'])
print('-+-+-')
print(board['mid-L'] + '|' + board['mid-M'] + '|' + board['mid-R'])
print('-+-+-')
print(board['low-L'] + '|' + board['low-M'] + '|' + board['low-R'])
printBoard(theBoard)
When you run this program, 
printBoard()
will print out a blank tic-tac-
toe board.
| |
-+-+-
| |
-+-+-
| |
The 
printBoard()
function can handle any tic-tac-toe data structure you 
pass it. Try changing the code to the following:
theBoard = {'top-L': 'O', 'top-M': 'O', 'top-R': 'O', 'mid-L': 'X', 'mid-M': 
'X', 'mid-R': ' ', 'low-L': ' ', 'low-M': ' ', 'low-R': 'X'}
def printBoard(board):
print(board['top-L'] + '|' + board['top-M'] + '|' + board['top-R'])
print('-+-+-')
print(board['mid-L'] + '|' + board['mid-M'] + '|' + board['mid-R'])
print('-+-+-')
print(board['low-L'] + '|' + board['low-M'] + '|' + board['low-R'])
printBoard(theBoard)
116   
Chapter 5
Now when you run this program, the new board will be printed to 
the screen.
O|O|O
-+-+-
X|X|  
-+-+-
| |X
Because you created a data structure to represent a tic-tac-toe board 
and wrote code in 
printBoard()
to interpret that data structure, you now 
have a program that “models” the tic-tac-toe board. You could have orga-
nized your data structure differently (for example, using keys like 
'TOP-LEFT'
instead of 
'top-L'
), but as long as the code works with your data structures, 
you will have a correctly working program.
For example, the 
printBoard()
function expects the tic-tac-toe data struc-
ture to be a dictionary with keys for all nine slots. If the dictionary you passed 
was missing, say, the 
'mid-L'
key, your program would no longer work.
O|O|O
-+-+-
Traceback (most recent call last):
File "ticTacToe.py", line 10, in <module>
printBoard(theBoard)
File "ticTacToe.py", line 6, in printBoard
print(board['mid-L'] + '|' + board['mid-M'] + '|' + board['mid-R'])
KeyError: 'mid-L'
Now let’s add code that allows the players to enter their moves. Modify 
the ticTacToe.py program to look like this:
theBoard = {'top-L': ' ', 'top-M': ' ', 'top-R': ' ', 'mid-L': ' ', 'mid-M': ' 
', 'mid-R': ' ', 'low-L': ' ', 'low-M': ' ', 'low-R': ' '}
def printBoard(board):
print(board['top-L'] + '|' + board['top-M'] + '|' + board['top-R'])
print('-+-+-')
print(board['mid-L'] + '|' + board['mid-M'] + '|' + board['mid-R'])
print('-+-+-')
print(board['low-L'] + '|' + board['low-M'] + '|' + board['low-R'])
turn = 'X'
for i in range(9):
    printBoard(theBoard)
print('Turn for ' + turn + '. Move on which space?')
    move = input()
    theBoard[move] = turn
    if turn == 'X':
turn = 'O'
else:
turn = 'X'
printBoard(theBoard)
Documents you may be interested
Documents you may be interested