forked from Rust-related/RustPython
Added the python zen module.
This commit is contained in:
28
Lib/this.py
Normal file
28
Lib/this.py
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
s = """Gur Mra bs Clguba, ol Gvz Crgref
|
||||||
|
|
||||||
|
Ornhgvshy vf orggre guna htyl.
|
||||||
|
Rkcyvpvg vf orggre guna vzcyvpvg.
|
||||||
|
Fvzcyr vf orggre guna pbzcyrk.
|
||||||
|
Pbzcyrk vf orggre guna pbzcyvpngrq.
|
||||||
|
Syng vf orggre guna arfgrq.
|
||||||
|
Fcnefr vf orggre guna qrafr.
|
||||||
|
Ernqnovyvgl pbhagf.
|
||||||
|
Fcrpvny pnfrf nera'g fcrpvny rabhtu gb oernx gur ehyrf.
|
||||||
|
Nygubhtu cenpgvpnyvgl orngf chevgl.
|
||||||
|
Reebef fubhyq arire cnff fvyragyl.
|
||||||
|
Hayrff rkcyvpvgyl fvyraprq.
|
||||||
|
Va gur snpr bs nzovthvgl, ershfr gur grzcgngvba gb thrff.
|
||||||
|
Gurer fubhyq or bar-- naq cersrenoyl bayl bar --boivbhf jnl gb qb vg.
|
||||||
|
Nygubhtu gung jnl znl abg or boivbhf ng svefg hayrff lbh'er Qhgpu.
|
||||||
|
Abj vf orggre guna arire.
|
||||||
|
Nygubhtu arire vf bsgra orggre guna *evtug* abj.
|
||||||
|
Vs gur vzcyrzragngvba vf uneq gb rkcynva, vg'f n onq vqrn.
|
||||||
|
Vs gur vzcyrzragngvba vf rnfl gb rkcynva, vg znl or n tbbq vqrn.
|
||||||
|
Anzrfcnprf ner bar ubaxvat terng vqrn -- yrg'f qb zber bs gubfr!"""
|
||||||
|
|
||||||
|
d = {}
|
||||||
|
for c in (65, 97):
|
||||||
|
for i in range(26):
|
||||||
|
d[chr(i+c)] = chr((i+13) % 26 + c)
|
||||||
|
|
||||||
|
print("".join([d.get(c, c) for c in s]))
|
||||||
@@ -116,22 +116,24 @@ pub fn make_module(vm: &VirtualMachine, module: PyObjectRef, builtins: PyObjectR
|
|||||||
let path_list = if cfg!(target_arch = "wasm32") {
|
let path_list = if cfg!(target_arch = "wasm32") {
|
||||||
vec![]
|
vec![]
|
||||||
} else {
|
} else {
|
||||||
let get_paths = |paths| match paths {
|
fn get_paths(env_variable_name: &str) -> Vec<String> {
|
||||||
Some(paths) => env::split_paths(paths),
|
let paths = env::var_os(env_variable_name);
|
||||||
None => env::split_paths(""),
|
match paths {
|
||||||
};
|
Some(paths) => env::split_paths(&paths)
|
||||||
|
.map(|path| {
|
||||||
|
path.into_os_string()
|
||||||
|
.into_string()
|
||||||
|
.expect(&format!("{} isn't valid unicode", env_variable_name))
|
||||||
|
})
|
||||||
|
.collect(),
|
||||||
|
None => vec![],
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
let rustpy_path = env::var_os("RUSTPYTHONPATH");
|
get_paths("RUSTPYTHONPATH")
|
||||||
let py_path = env::var_os("PYTHONPATH");
|
.into_iter()
|
||||||
get_paths(rustpy_path.as_ref())
|
.chain(get_paths("PYTHONPATH").into_iter())
|
||||||
.chain(get_paths(py_path.as_ref()))
|
.map(|path| ctx.new_str(path))
|
||||||
.map(|path| {
|
|
||||||
ctx.new_str(
|
|
||||||
path.into_os_string()
|
|
||||||
.into_string()
|
|
||||||
.expect("PYTHONPATH isn't valid unicode"),
|
|
||||||
)
|
|
||||||
})
|
|
||||||
.collect()
|
.collect()
|
||||||
};
|
};
|
||||||
let path = ctx.new_list(path_list);
|
let path = ctx.new_list(path_list);
|
||||||
|
|||||||
Reference in New Issue
Block a user