Plutonic Rainbows

Condensing

In the last script, I mentioned about condensing the lines down. It’s actually very simple to do. Just insert a semi-colon between lines.

For example:

from sys import argv
script, filename

becomes

from sys import argv;script, filename

If you apply this in your scripts, things become much more manageable to read. Here is the previous script with the new additions.

from sys import argv;script, file_name = argv

print "Hello. let's erase the contents of the file called: '%s'." % file_name
print "If you do not want this, hit CTRL-C."

raw_input("?")

print "Opening file..."

target = open(file_name, 'w');target.truncate()

print "Contents now erased."

line1 = raw_input("Line 1: ");line2 = raw_input("Line 2: ");line3 = raw_input("Line 3: ")

print "Writing three lines..."

target.write(line1);target.write("\n");target.write(line2);target.write("\n");target.write(line3);target.write("\n")

print "Done.";print "Let's close the file."

target.close()

print "All finished."

As you can see, most of the time is saved with the part where the script asks for raw_input and when using target.write.

Erasing and Writing to a Text File

This looks quite complicated but that’s only because a lot of the lines can be condensed. The script opens the file, erases the contents and then allows the user to write in new data. Used with other scripts, it’s quite a powerful few lines of code.

from sys import argv

script, filename = argv

print "We are going to erase %r." % filename
print "If you don't want that, press ctrl-c."
print "Otherwise, hit Return."

raw_input("?")

print "Opening the file..."
target = open(filename, 'w')

print "Truncating the file...Goodbye"
target.truncate()

print "Now I am going to ask you for three lines."

line1 = raw_input("Line 1")
line2 = raw_input("Line 2")
line3 = raw_input("line 3")

print "I am going to write these to the file."

target.write(line1)
target.write("\n")

target.write(line2)
target.write("\n")

target.write(line3)
target.write("\n")

print "And finally, we close it."
target.close()

Reading a Simple Text File with Python

Here’s a script to read the contents of a text file.

from sys import argv

script, filename = argv

#open the file and read contents
txt = open(filename)
print txt.read()

print "Read the file again?"
file_again = raw_input("> ")
txt_again = open(file_again)
print txt_again.read()

Prompting, Unpacking and Variables

Remember that you need to call the script from the command line and then list the things you want to show.

So for instance, if the script is called ‘ex12.py’, then you would type ‘python ex12.py apples strawberries pears’.

The results will then be printed out as:

The script is called: ex12.py

Your first variable is: apples

Your second variable is: strawberries

Your third variable is: pears

Anyway, here is the script.

from sys import argv

script, first, second, third = argv

print "\n"

print "The script is called:", script
print "\n"
print "Your first variable is:", first
print "\n"
print "Your second variable is:", second
print "\n"
print "Your third variable is:", third

print "\n"

Fahrenheit Calculator

Simple script that calculates degrees Fahrenheit.

# -*- coding: utf-8 -*-

x = float(raw_input("°C: "))

fahrenheit = x * 1.8 + 32

print "Fahrenheit: {0:.1f}°F".format (fahrenheit)

Nightfliers

Truly there is some absolute rubbish on Netflix. Quite how this sci-fi drama got remade is probably solely down to the success of the writer George R.R. Martin and the Game Of Thrones series.

However, don’t be fooled. This series is simply dreadful. No coherent plot, poor acting and characters that do not engage the viewer whatsoever.

Halide - New App

So it seems that Halide, the makers of the camera app for iOS have something new launching this month as mentioned here. I wonder what they could be up to? There are already dozens of photo editing applications out there - my go to for RAW editing is Adobe’s Lightroom. It would seem pointless to go up against that. Maybe it’s not even photography related.

Mikron - Severance

New album due on Friday following up Warning Score from 2016. Previews hint at a more atmospheric set of tracks than before. It will be available in a number of formats and you can buy it from Bleep.

Update

This is very good indeed. More atmospheric (and somehow more complete) than their debut album - not that I didn’t like that. But this is a different beast altogether. Standouts for me are: Embers, Lyre, Aldergrove, Sunken Paths and Cast on a Clock Face.

Best thing I’ve heard so far this year.

Strava

I began using this app yesterday. It uses Location Services and GPS in order to track your movement. Great for hiking. It also gives you lots of other useful stats such as calories used and a map of your progress. You can read more about Strava here.

Face Time Woes

Juli Clover at MacRumours:

There’s a major bug in FaceTime right now that lets you connect to someone and hear their audio without the person even accepting the call. You can force a FaceTime call with someone and hear what they’re saying, perhaps even without their knowledge.

We tested the bug at MacRumors and were able to initiate a FaceTime call with each other where we could hear the person on the other end without ever having pressed the button to accept the call. To exploit the bug, all you have to do is add your own phone number to a FaceTime call you’ve already initiated, which apparently creates a major FaceTime issue.

Adding your own phone number to Group FaceTime a second time causes the call between both parties to connect. You can hear the person on the other end and they can hear you, even though the call wasn’t accepted.

What’s weird about this is that I had an unknown FaceTime caller a few days ago. I’ve disabled FaceTime until Apple issue an update.