1
0
mirror of https://github.com/satwikkansal/wtfpython synced 2024-11-22 11:04:25 +01:00

Update backslash example

This commit is contained in:
Satwik Kansal 2018-01-17 19:23:13 +05:30
parent ca78a6d483
commit e2e8e42d52
2 changed files with 19 additions and 36 deletions

24
README.md vendored
View File

@ -407,19 +407,25 @@ Can you guess why the output is `[2, 4]`?
**Output:** **Output:**
``` ```
>>> print("\\ some string \\") >>> print("\\ C:\\")
>>> print(r"\ some string") \ C:\
>>> print(r"\ some string \") >>> print(r"\ C:")
\ C:
>>> print(r"\ C:\")
File "<stdin>", line 1 File "<stdin>", line 1
print(r"\ some string \") print(r"\ C:\")
^ ^
SyntaxError: EOL while scanning string literal SyntaxError: EOL while scanning string literal
``` ```
#### 💡 Explanation #### 💡 Explanation
- In a raw string literal, as indicated by the prefix `r`, the backslash doesn't have the special meaning. - In a raw string literal, as indicated by the prefix `r`, the backslash doesn't have the special meaning.
```py
>>> print(repr(r"wt\"f"))
'wt\\"f'
```
- What the interpreter actually does, though, is simply change the behavior of backslashes, so they pass themselves and the following character through. That's why backslashes don't work at the end of a raw string. - What the interpreter actually does, though, is simply change the behavior of backslashes, so they pass themselves and the following character through. That's why backslashes don't work at the end of a raw string.
--- ---
@ -1546,6 +1552,14 @@ another_dict[1.0] = "Python"
"Python" "Python"
``` ```
3\.
```py
>>> some_bool = True
>>> "wtf"*some_bool
'wtf'
>>> "wtf"*some_bool
''
```
#### 💡 Explanation: #### 💡 Explanation:

View File

@ -1,31 +0,0 @@
import pprint
fname = "README.md"
snipepts = []
with open(fname, 'r') as f:
lines = f.readlines()
for line in lines:
# check if it's a H3
if line.startswith("###"):
title = line.replace("### ", "")
# get Title, des
# store lines till an H4 (explanation) is encountered
# store lines again until --- or another H3 is encountered
snippets.append({
"title":,
"description":,
"explanation":
})
# repeat until EOL is encoutered
# separating by category
categories = ["a", "b", "c"]
snips_by_cat = {k:[] for k in categories}
for snip in snippets:
cat = raw_input(snip["title"])
snips_by_cat[cat].append(snip)
pprint.pprint(snips_by_cat)