142x Filetype PDF File size 0.87 MB Source: derechodelared.com
Converting Data Types String Operations Python 2.7 Essentials Useful String functions: Convert anything to a string: newstring = str() Make lowercase: "A".lower()="a" POCKET REFERENCE GUIDE newstring = str(100) Make UPPERCASE : "a".upper()="A" SANS Institute Make Title Format: "hi world".title()="Hi World" www.sans.org/sec573 Convert String to Integer: Replace a substring: "123".replace('2','z')= "1z3" http://isc.sans.edu newint = int( [,base]) Mark Baggett Twitter: @markbaggett Count occurrences of substring:"1123".count("1")=2 All of the following assign the Get offset of substring in string: "123".index("2")=1 variable ten the integer 10 Detect substring in string: “is” in “fish” == True 3 Methods of Python Execution >>> ten = int(“1010”,2) Encode "a string": "a string".encode(codec name) >>> ten = int(“0010”) Decode a string: "a string".decode(codec name) Command line Execution with -c: >>> ten = int(“000A”,16) Example with the ROT13 codec: # python –c [“script string”] >>> print "RAPBQR-ZR".decode("rot13") python –c "print 'Hello World!'" Convert Float to Integer by dropping decimal: ENCODE-ME newint = int( ) Python Interpreter Script Execution: >>> print int(3.1415) Some String encoders/decoder codec names: # cat helloworld.py 3 Base64, bz2 , hex, rot13, uu, zip, string_escape print "Hello World" >>> int(3.6) # python helloworld.py 3 Convert a string to a list (default separator=space): Hello World newlist = astr.split( ) Convert String or number to Float: >>> print "A B C".split() Python Interactive Shell: afloat = float() ['A', 'B', 'C'] # python >>> print float("1.5") >>> print "A B C".split() >>> print "Hello World" 1.5 ['A', 'B', 'C'] Hello World >>> print float(1) >>> print "A,B, ,C".split(",") 1.0 ['A', 'B', ' ', 'C'] >>> print "WANNA BANANA?".split("AN") Convert String Character to ASCII decimal: ['W', 'NA B', '', 'A?'] Python Command Line Options newint = ord( ) >>> print ord("A") # python –c “script as string” Convert a list (or other iterable object) to a string: 65 Join a list together putting string between elements. Execute a string containing a script # python –m [module args] “astring”.join([list]) Convert ASCII decimal to String of length 1: >>> print "".join(['A','B','C']) Find module in path and execute as a script newstr = chr( ) ABC Example: python –m “SimpleHTTPServer” >>> print chr(65) >>> print ",".join(['A','B','C']) # python –i A A,B,C Drop to interactive shell after script execution SEC573 PyWars Essentials Loops Lists & Dictionaries Misc Create pyWars Object List essentials: Adding Comments to code: >>> import pyWars #Comments begin the line with a pound sign Create an empty list: newlist=[] >>> game= pyWars.exercise() Assign value at index: alist[index]= value Defining Functions: Access value at index alist[index] Account Mangement Here is a function called “add”. It accepts 2 arguments Add item to list: alist.append(new item) >>> game.new_acct("username","password") num1 and num2 and returns their sum. Calling “print Insert into list: alist.insert(at position, new item) >>> game.login("username","password") add(5,5)” will print “10” to the screen: Count # of an item in list: alist.count( item ) >>> game.logout() Delete 1 matching item: alist.remove(del item) def add(num1, num2): Remove item at index del alist[index] Query a question: #code blocks must be indented >>> game.question( ) #each space has meaning in python Dictionary essentials: myresult = num1 + num2 Create an empty dict: dic={} return myresult Query the data: >>> game.data( ) Initialize a non-empty dictionary: dic = { “key1”:”value1”,”key2”:”value2”} if then else statements: if : Submit an answer: Assign a value: dic[“key”]=”value” >>> game.answer( , #code block here will execute Determine if key exists: dic.has_key(“key”) solverfunc(game.data( ))) #when logic test 1 is True Access value at key: dic[“key”], dic.get(“key”) elif : List of all keys: dic.keys() #code block executes logic test 1 is Logic and Math Operators List of all values: dic.values() #False and logic test 2 is True List of (key,value) tuples: dic.items() else: Math Operator Example X=7, Y=5 #code block for else has no test and Addition X + Y 12 #executes when if an all elif are False Looping examples: Subtraction X - Y 2 For loop 0 thru 9: for x in range(10): Slicing and Indexing Strings, Lists, etc Multiplication X * Y 35 For loop 5 thru 10: for x in range(5,11): Division X / Y 1 For each char in a string: for char in astring: Slicing strings and lists: Division X / float(Y) 1.4 For items in list : for x in alist: x[start:stop:step] x=[4,8,9,3,0] x=”48930” Exponent X ** Y 16807 For loop retrieving indexes and values in a list : x[0] 4 ‘4’ Modulo X % Y 2 for index,value in enumerate(alist): x[2] 9 ‘9’ Logic Operator For keys in a dict : for x in adict.keys(): x[:3] [4,8,9] ‘489’ For items in dict : for key,value in adict.items(): Equality X == Y False x[3:] [3,0] ‘30’ while do: Greater Than X > Y False x[:-2] [4,8,9] ‘489’ Less Than X < Y True x[::2] [4,9,0] ‘490’ Loop Control statements (for and while): Less or Equal X <= Y True x[::-1] [0,3,9,8,4] ‘03984’ Exit loop immediately break Not Equal X !=Y or X<>Y True len(x) 5 5 Skip rest of loop and do loop again continue Other Logical Operators: AND, OR and NOT sorted(x) [0,3,4,8,9] ['0', '3', '4', '8', '9']
no reviews yet
Please Login to review.