











name = 'Fred'

# Using the old .format() method:
print('His name is {var}.'.format(var=name))

# Using f-strings:
print(f'His name is {name}.')





print(f'His name is {name!r}')





d = {'a':123,'b':456}

print(f'Address: {d['a']} Main Street')





d = {'a':123,'b':456}

print(f"Address: {d['a']} Main Street")





library = [('Author', 'Topic', 'Pages'), ('Twain', 'Rafting', 601), ('Feynman', 'Physics', 95), ('Hamilton', 'Mythology', 144)]

for book in library:
    print(f'{book[0]:{10}} {book[1]:{8}} {book[2]:{7}}')





for book in library:
    print(f'{book[0]:{10}} {book[1]:{10}} {book[2]:.>{7}}') # here .> was added





from datetime import datetime

today = datetime(year=2018, month=1, day=27)

print(f'{today:%B %d, %Y}')








%%writefile test.txt
Hello, this is a quick test file.
This is the second line of the file.





myfile = open('whoops.txt')





pwd





# Open the text.txt file we created earlier
my_file = open('test.txt')


my_file





# We can now read the file
my_file.read()


# But what happens if we try to read it again?
my_file.read()





# Seek to the start of file (index 0)
my_file.seek(0)


# Now read again
my_file.read()





# Readlines returns a list of the lines in the file
my_file.seek(0)
my_file.readlines()





my_file.close()





# Add a second argument to the function, 'w' which stands for write.
# Passing 'w+' lets us read and write to the file

my_file = open('test.txt','w+')





# Write to the file
my_file.write('This is a new first line')


# Read the file
my_file.seek(0)
my_file.read()


my_file.close()  # always do this when you're done with a file





my_file = open('test.txt','a+')
my_file.write('\nThis line is being appended to test.txt')
my_file.write('\nAnd another line here.')


my_file.seek(0)
print(my_file.read())


my_file.close()





%%writefile -a test.txt

This is more text being appended to test.txt
And another line here.








with open('test.txt','r') as txt:
    first_line = txt.readlines()[0]
    
print(first_line)





txt.read()





with open('test.txt','r') as txt:
    for line in txt:
        print(line, end='')  # the end='' argument removes extra linebreaks



