505 stdout_data = stdout_data.decode('utf-8').strip()
506 stderr_data = stderr_data.decode('utf-8').strip()
507 exit_code = ps.returncode
508 assert exit_code == 0, 'Command "%s" failed with stdout: "%s" and stderr: "%s"' % (509 cmd, stdout_data, stderr_data)
510
511
498
499
500def _delete_local_file(local_file_path):
501 cmd = 'rm %s' % local_file_path502 with subprocess.Popen(cmd,
503 shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) as ps:
504 stdout_data, stderr_data = ps.communicate()
493 exit_code = ps.returncode
494 print('Result is "%s"' % stdout_data)
495 if exit_code != 0:
496 print('Stderr is "%s"' % stderr_data)497 return exit_code, stdout_data, stderr_data
498
499
491 stdout_data = stdout_data.decode('utf-8').strip()
492 stderr_data = stderr_data.decode('utf-8').strip()
493 exit_code = ps.returncode
494 print('Result is "%s"' % stdout_data)495 if exit_code != 0:
496 print('Stderr is "%s"' % stderr_data)
497 return exit_code, stdout_data, stderr_data
485 dir_of_this_script = os.path.split(__file__)[0]
486 adbe_py = os.path.join(dir_of_this_script, '../adbe/main.py')
487 cmd = '%s %s' % (_PYTHON_CMD, adbe_py)
488 with subprocess.Popen('%s %s' % (cmd, sub_cmd),489 shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) as ps:
490 stdout_data, stderr_data = ps.communicate()
491 stdout_data = stdout_data.decode('utf-8').strip()
f-strings are the fastest way to format strings as compared to the following methods:
%
format()
str.join
+
operator to concatinate stringTemplate.substitute
Some less preferred ways to format strings are the following:
from string import Template
menu = ('eggs', 'spam', 42.4)
old_order = "%s and %s: %.2f ¤" % menu # [consider-using-f-string]
beginner_order = menu[0] + " and " + menu[1] + ": " + str(menu[2]) + " ¤"
joined_order = " and ".join(menu[:2])
format_order = "{} and {}: {:0.2f} ¤".format(menu[0], menu[1], menu[2])
named_format_order = "{eggs} and {spam}: {price:0.2f} ¤".format(eggs=menu[0], spam=menu[1], price=menu[2])
template_order = Template('$eggs and $spam: $price ¤').substitute(eggs=menu[0], spam=menu[1], price=menu[2])
Consider using f-strings as shown below:
menu = ('eggs', 'spam', 42.4)
f_string_order = f"{menu[0]} and {menu[1]}: {menu[2]:0.2f} ¤"