Python: Difference between revisions
No edit summary |
|||
Line 92: | Line 92: | ||
==Libraries== | ==Libraries== | ||
===Numpy=== | ===Numpy=== | ||
===Matplotlib=== | |||
Matplotlib is the main library used for making graphs.<br> | |||
Alternatively, there are also Python bindings for ggplot2<br> | |||
[https://matplotlib.org/examples/ Examples]<br> | |||
[https://matplotlib.org/3.1.1/gallery/index.html Gallery] |
Revision as of 11:59, 14 October 2019
Installation
Use Anaconda.
Basic Usage
How to use Python 3.
Ternary Operator
is_nice = True
state = "nice" if is_nice else "not nice"
Strings
String Interpolation
Reference
Python has 3 syntax variations for string interpolation.
name = 'World'
program = 'Python'
print(f'Hello {name}! This is {program}')
print("%s %s" %('Hello','World',))
name = 'world'
program ='python'
print('Hello {name}!This is{program}.'.format(name=name,program=program))
Lambda Function
lambda x: x * 2
Filesystem Read and Write
List all files in a folder
gazeDir = "Gaze_txt_files"
# List of folders in root folder
gazeFolders = [path.join(gazeDir, x) for x in os.listdir(gazeDir)]
# List of files 2 folders down
gazeFiles = [path.join(x, y) for x in gazeFolders for y in os.listdir(x)]
Read/Write entire text file into a list
Reading
[1]
with open('C:/path/numbers.txt') as f:
lines = f.read().splitlines()
Writing
[2]
with open('your_file.txt', 'w') as f:
f.write("\n".join(my_list))
Create Directory if it doesn't exist
def ensure_dir_exists(filename):
if not os.path.exists(os.path.dirname(filename)):
try:
os.makedirs(os.path.dirname(filename))
except OSError as exc: # Guard against race condition
if exc.errno != errno.EEXIST:
raise
Regular Expressions (Regex)
import re
myReg = re.compile(r'height:(\d+)cm')
myMatch = re.match(myReg, "height:33cm");
print(myMatch[1])
# 33
Spawning Processes
Use subprocess to spawn other programs.
import subprocess
subprocess.run(["ls", "-l"], cwd="/")
Libraries
Numpy
Matplotlib
Matplotlib is the main library used for making graphs.
Alternatively, there are also Python bindings for ggplot2
Examples
Gallery