diff options
Diffstat (limited to 'challenge-110/colin-crain/python')
| -rw-r--r-- | challenge-110/colin-crain/python/ch-1.py | 42 | ||||
| -rw-r--r-- | challenge-110/colin-crain/python/ch-2.py | 52 |
2 files changed, 94 insertions, 0 deletions
diff --git a/challenge-110/colin-crain/python/ch-1.py b/challenge-110/colin-crain/python/ch-1.py new file mode 100644 index 0000000000..7c381f1c37 --- /dev/null +++ b/challenge-110/colin-crain/python/ch-1.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python3
+#
+#
+# phone-block.py
+#
+# Valid Phone Numbers
+# Submitted by: Mohammad S Anwar
+# You are given a text file.
+#
+# Write a script to display all valid phone numbers in the given text file.
+#
+# Acceptable Phone Number Formats
+# +nn nnnnnnnnnn
+# (nn) nnnnnnnnnn
+# nnnn nnnnnnnnnn
+#
+# Input File
+# 0044 1148820341
+# +44 1148820341
+# 44-11-4882-0341
+# (44) 1148820341
+# 00 1148820341
+#
+# Output
+# 0044 1148820341
+# +44 1148820341
+# (44) 1148820341
+#
+#
+#
+# © 2021 colin crain
+## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
+
+import re
+
+f = open("phone-numbers.txt", "r")
+for line in f:
+ pn = re.search(r"((?:\d{4}|\(\d\d\)|\+\d\d)\s\d{10}(?!\d))", line)
+ if pn != None:
+ print('{0:>16s}'.format(pn.group()))
+
+f.close
diff --git a/challenge-110/colin-crain/python/ch-2.py b/challenge-110/colin-crain/python/ch-2.py new file mode 100644 index 0000000000..d76f2bdaf4 --- /dev/null +++ b/challenge-110/colin-crain/python/ch-2.py @@ -0,0 +1,52 @@ +#!/usr/bin/env python3
+#
+# reflect.py
+#
+# Transpose File
+# Submitted by: Mohammad S Anwar
+# You are given a text file.
+#
+# Write a script to transpose the contents of the given file.
+#
+# Input File
+# name,age,sex
+# Mohammad,45,m
+# Joe,20,m
+# Julie,35,f
+# Cristina,10,f
+#
+# Output:
+# name,Mohammad,Joe,Julie,Cristina
+# age,45,20,35,10
+# sex,m,m,f,f
+#
+#
+#
+# © 2021 colin crain
+## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
+
+
+import re
+
+mat = []
+trans = []
+cols = 0
+
+f = open("transpose-data.txt", "r")
+for line in f:
+ row = re.split(",", line.rstrip())
+ mat.append(row)
+ cols = max(cols, len(row))
+f.close
+
+
+trans = [[mat[j][i] for j in range(len(mat))] for i in range(len(mat[0]))]
+
+for i in mat:
+ print( *i )
+
+print()
+
+for i in trans:
+ print( *i )
+
|
