-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathss.py
More file actions
73 lines (51 loc) · 1.16 KB
/
ss.py
File metadata and controls
73 lines (51 loc) · 1.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
from __future__ import annotations
import os
from functools import wraps
def color(fun):
@wraps(fun)
def new_fun(*args):
funName = fun.__name__
return ss(f":{funName}[{args[0]}]")
return new_fun
class ss(str):
"""This is super string class for web"""
@color
def red(self):
pass
@color
def blue(self):
pass
@color
def orange(self):
pass
@color
def green(self):
pass
@color
def violet(self):
pass
@color
def gray(self):
pass
@color
def rainbow(self):
pass
def toUrl(self, url: str):
return ss(f"[{self}]({url})")
def append(self, text: str):
return ss(f'{self}{text}')
def prepend(self, text: str):
return ss(f'{text}{self}')
def title(self):
return self.prepend('# ')
def bold(self):
return ss(f'**{self}**')
def toPath(self):
rs = self
keys = ['\\', '/']
for k in keys:
if os.sep != k:
rs = rs.replace(k, os.sep)
return rs
if __name__ == '__main__':
print(ss('hello222').red().title())