Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
Python
提交
c9ba8dd5
P
Python
项目概览
OpenDocCN
/
Python
通知
5
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
Python
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
c9ba8dd5
编写于
7月 06, 2019
作者:
T
TwoWater
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
删除代码模块
上级
2add141c
变更
78
展开全部
隐藏空白更改
内联
并排
Showing
78 changed file
with
41 addition
and
3988 deletion
+41
-3988
Article/Linux/Linux命令-用户,权限管理模块.md
Article/Linux/Linux命令-用户,权限管理模块.md
+38
-0
Code/Python10Code/.idea/Python10Code.iml
Code/Python10Code/.idea/Python10Code.iml
+0
-11
Code/Python10Code/.idea/inspectionProfiles/profiles_settings.xml
...thon10Code/.idea/inspectionProfiles/profiles_settings.xml
+0
-7
Code/Python10Code/.idea/misc.xml
Code/Python10Code/.idea/misc.xml
+0
-4
Code/Python10Code/.idea/modules.xml
Code/Python10Code/.idea/modules.xml
+0
-8
Code/Python10Code/.idea/workspace.xml
Code/Python10Code/.idea/workspace.xml
+0
-606
Code/Python10Code/com/__init__.py
Code/Python10Code/com/__init__.py
+0
-2
Code/Python10Code/com/twowater/__init__.py
Code/Python10Code/com/twowater/__init__.py
+0
-2
Code/Python10Code/com/twowater/mtest1.py
Code/Python10Code/com/twowater/mtest1.py
+0
-9
Code/Python10Code/com/twowater/mtest10.py
Code/Python10Code/com/twowater/mtest10.py
+0
-41
Code/Python10Code/com/twowater/mtest2.py
Code/Python10Code/com/twowater/mtest2.py
+0
-19
Code/Python10Code/com/twowater/mtest3.py
Code/Python10Code/com/twowater/mtest3.py
+0
-16
Code/Python10Code/com/twowater/mtest4.py
Code/Python10Code/com/twowater/mtest4.py
+0
-34
Code/Python10Code/com/twowater/mtest5.py
Code/Python10Code/com/twowater/mtest5.py
+0
-9
Code/Python10Code/com/twowater/mtest6.py
Code/Python10Code/com/twowater/mtest6.py
+0
-38
Code/Python10Code/com/twowater/mtest7.py
Code/Python10Code/com/twowater/mtest7.py
+0
-35
Code/Python10Code/com/twowater/mtest8.py
Code/Python10Code/com/twowater/mtest8.py
+0
-56
Code/Python10Code/com/twowater/mtest9.py
Code/Python10Code/com/twowater/mtest9.py
+0
-56
Code/Python11Code/.idea/Python11Code.iml
Code/Python11Code/.idea/Python11Code.iml
+0
-11
Code/Python11Code/.idea/inspectionProfiles/profiles_settings.xml
...thon11Code/.idea/inspectionProfiles/profiles_settings.xml
+0
-7
Code/Python11Code/.idea/misc.xml
Code/Python11Code/.idea/misc.xml
+0
-4
Code/Python11Code/.idea/modules.xml
Code/Python11Code/.idea/modules.xml
+0
-8
Code/Python11Code/.idea/workspace.xml
Code/Python11Code/.idea/workspace.xml
+0
-513
Code/Python11Code/com/__init__.py
Code/Python11Code/com/__init__.py
+0
-2
Code/Python11Code/com/twowater/__init__.py
Code/Python11Code/com/twowater/__init__.py
+0
-2
Code/Python11Code/com/twowater/mtest1.py
Code/Python11Code/com/twowater/mtest1.py
+0
-13
Code/Python11Code/com/twowater/mtest2.py
Code/Python11Code/com/twowater/mtest2.py
+0
-29
Code/Python11Code/com/twowater/mtest3.py
Code/Python11Code/com/twowater/mtest3.py
+0
-21
Code/Python11Code/com/twowater/mtest4.py
Code/Python11Code/com/twowater/mtest4.py
+0
-15
Code/Python14Code/.idea/Python14Code.iml
Code/Python14Code/.idea/Python14Code.iml
+0
-11
Code/Python14Code/.idea/inspectionProfiles/profiles_settings.xml
...thon14Code/.idea/inspectionProfiles/profiles_settings.xml
+0
-7
Code/Python14Code/.idea/misc.xml
Code/Python14Code/.idea/misc.xml
+0
-4
Code/Python14Code/.idea/modules.xml
Code/Python14Code/.idea/modules.xml
+0
-8
Code/Python14Code/.idea/workspace.xml
Code/Python14Code/.idea/workspace.xml
+0
-593
Code/Python14Code/com/__init__.py
Code/Python14Code/com/__init__.py
+0
-2
Code/Python14Code/com/twowater/__init__.py
Code/Python14Code/com/twowater/__init__.py
+0
-2
Code/Python14Code/com/twowater/test1.py
Code/Python14Code/com/twowater/test1.py
+0
-28
Code/Python14Code/com/twowater/test2.py
Code/Python14Code/com/twowater/test2.py
+0
-19
Code/Python14Code/com/twowater/test3.py
Code/Python14Code/com/twowater/test3.py
+0
-25
Code/Python14Code/com/twowater/test4.py
Code/Python14Code/com/twowater/test4.py
+0
-16
Code/Python14Code/com/twowater/test5.py
Code/Python14Code/com/twowater/test5.py
+0
-12
Code/Python14Code/com/twowater/test6.py
Code/Python14Code/com/twowater/test6.py
+0
-13
Code/Python14Code/com/twowater/test7.py
Code/Python14Code/com/twowater/test7.py
+0
-30
Code/Python14Code/com/twowater/test8.py
Code/Python14Code/com/twowater/test8.py
+0
-29
Code/Python8Code/.idea/Python8Code.iml
Code/Python8Code/.idea/Python8Code.iml
+0
-11
Code/Python8Code/.idea/inspectionProfiles/profiles_settings.xml
...ython8Code/.idea/inspectionProfiles/profiles_settings.xml
+0
-7
Code/Python8Code/.idea/misc.xml
Code/Python8Code/.idea/misc.xml
+0
-4
Code/Python8Code/.idea/modules.xml
Code/Python8Code/.idea/modules.xml
+0
-8
Code/Python8Code/.idea/workspace.xml
Code/Python8Code/.idea/workspace.xml
+0
-574
Code/Python8Code/com/Learn/__init__.py
Code/Python8Code/com/Learn/__init__.py
+0
-2
Code/Python8Code/com/Learn/module/__init__.py
Code/Python8Code/com/Learn/module/__init__.py
+0
-2
Code/Python8Code/com/Learn/module/nameattributes/__init__.py
Code/Python8Code/com/Learn/module/nameattributes/__init__.py
+0
-2
Code/Python8Code/com/Learn/module/nameattributes/__pycache__/lname.cpython-36.pyc
...rn/module/nameattributes/__pycache__/lname.cpython-36.pyc
+0
-0
Code/Python8Code/com/Learn/module/nameattributes/lname.py
Code/Python8Code/com/Learn/module/nameattributes/lname.py
+0
-7
Code/Python8Code/com/Learn/module/nameattributes/user_lname.py
...Python8Code/com/Learn/module/nameattributes/user_lname.py
+0
-6
Code/Python8Code/com/Learn/module/privateattributes/__init__.py
...ython8Code/com/Learn/module/privateattributes/__init__.py
+0
-2
Code/Python8Code/com/Learn/module/privateattributes/vip_user.py
...ython8Code/com/Learn/module/privateattributes/vip_user.py
+0
-23
Code/Python8Code/com/Learn/module/sys/__init__.py
Code/Python8Code/com/Learn/module/sys/__init__.py
+0
-2
Code/Python8Code/com/Learn/module/sys/test_sys.py
Code/Python8Code/com/Learn/module/sys/test_sys.py
+0
-6
Code/Python8Code/com/__init__.py
Code/Python8Code/com/__init__.py
+0
-2
Code/Python9Code/.idea/Python9Code.iml
Code/Python9Code/.idea/Python9Code.iml
+0
-11
Code/Python9Code/.idea/inspectionProfiles/profiles_settings.xml
...ython9Code/.idea/inspectionProfiles/profiles_settings.xml
+0
-7
Code/Python9Code/.idea/misc.xml
Code/Python9Code/.idea/misc.xml
+0
-4
Code/Python9Code/.idea/modules.xml
Code/Python9Code/.idea/modules.xml
+0
-8
Code/Python9Code/.idea/workspace.xml
Code/Python9Code/.idea/workspace.xml
+0
-680
Code/Python9Code/com/__init__.py
Code/Python9Code/com/__init__.py
+0
-2
Code/Python9Code/com/twowater/__init__.py
Code/Python9Code/com/twowater/__init__.py
+0
-2
Code/Python9Code/com/twowater/mtest0.py
Code/Python9Code/com/twowater/mtest0.py
+0
-10
Code/Python9Code/com/twowater/mtest1.py
Code/Python9Code/com/twowater/mtest1.py
+0
-27
Code/Python9Code/com/twowater/mtest2.py
Code/Python9Code/com/twowater/mtest2.py
+0
-17
Code/Python9Code/com/twowater/mtest3.py
Code/Python9Code/com/twowater/mtest3.py
+0
-22
Code/Python9Code/com/twowater/mtest4.py
Code/Python9Code/com/twowater/mtest4.py
+0
-13
Code/Python9Code/com/twowater/mtest5.py
Code/Python9Code/com/twowater/mtest5.py
+0
-33
Code/Python9Code/com/twowater/mtest6.py
Code/Python9Code/com/twowater/mtest6.py
+0
-36
Code/Python9Code/com/twowater/mtest7.py
Code/Python9Code/com/twowater/mtest7.py
+0
-23
Code/Python9Code/com/twowater/mtest8.py
Code/Python9Code/com/twowater/mtest8.py
+0
-27
Code/Python9Code/com/twowater/mtest9.py
Code/Python9Code/com/twowater/mtest9.py
+0
-30
README.md
README.md
+3
-1
未找到文件。
Article/Linux/Linux命令-用户,权限管理模块.md
0 → 100644
浏览文件 @
c9ba8dd5
## 用户,权限管理
用户是 Unix/Linux 系统工作中重要的一环,用户管理包括用户与组账号的管理。
在 Unix/Linux 系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且对于不同的系统资源拥有不同的使用权限。
Unix/Linux 系统中的 root 账号通常用于系统的维护和管理,它对 Unix/Linux 操作系统的所有部分具有不受限制的访问权限。
在 Unix/Linux 安装的过程中,系统会自动创建许多用户账号,而这些默认的用户就称为“标准用户”。
在大多数版本的 Unix/Linux 中,都不推荐直接使用 root 账号登录系统。
#### 1.多用户系统
> 什么是多用户呢?
「多用户」指允许多个用户(逻辑上的账户),同时使用的操作系统或应用软件。
而 Linux 就是多用户操作系统,允许多个用户通过远程登录的方式访问一台机器并同时进行使用,相互之间互不影响。
> 那我们经常使用的 Windows 是不是多用户操作系统呢?
Windows 系列的话,Windows 1.x、2.x、3.x(不含NT 3.x)、9x、Me 均为单用户操作系统,其中 9x 虽然有多用户的雏形但基本形同虚设,Windows Me 是最后一个非 NT 内核的 Windows 系统,同样不具备实用性的多用户设计。
有人会问, Windows 不是可以创建多个账号吗?为什么不是多用户操作系统呢?
其实 Windows 的多用户不是真正的多用户,就好比你在家里远程登录了你公司的电脑,你公司的电脑会立刻进入到锁屏状态,而且被人是不可以操作的。这就说明不能多账号同时操作一台电脑了。
Code/Python10Code/.idea/Python10Code.iml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<module
type=
"PYTHON_MODULE"
version=
"4"
>
<component
name=
"NewModuleRootManager"
>
<content
url=
"file://$MODULE_DIR$"
/>
<orderEntry
type=
"jdk"
jdkName=
"Python 3.6.1 (C:\Users\Administrator\AppData\Local\Programs\Python\Python36\python.exe)"
jdkType=
"Python SDK"
/>
<orderEntry
type=
"sourceFolder"
forTests=
"false"
/>
</component>
<component
name=
"TestRunnerService"
>
<option
name=
"PROJECT_TEST_RUNNER"
value=
"Unittests"
/>
</component>
</module>
\ No newline at end of file
Code/Python10Code/.idea/inspectionProfiles/profiles_settings.xml
已删除
100644 → 0
浏览文件 @
2add141c
<component
name=
"InspectionProjectProfileManager"
>
<settings>
<option
name=
"useProjectProfile"
value=
"false"
/>
<option
name=
"USE_PROJECT_PROFILE"
value=
"false"
/>
<version
value=
"1.0"
/>
</settings>
</component>
\ No newline at end of file
Code/Python10Code/.idea/misc.xml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectRootManager"
version=
"2"
project-jdk-name=
"Python 3.6.1 (C:\Users\Administrator\AppData\Local\Programs\Python\Python36\python.exe)"
project-jdk-type=
"Python SDK"
/>
</project>
\ No newline at end of file
Code/Python10Code/.idea/modules.xml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectModuleManager"
>
<modules>
<module
fileurl=
"file://$PROJECT_DIR$/.idea/Python10Code.iml"
filepath=
"$PROJECT_DIR$/.idea/Python10Code.iml"
/>
</modules>
</component>
</project>
\ No newline at end of file
Code/Python10Code/.idea/workspace.xml
已删除
100644 → 0
浏览文件 @
2add141c
此差异已折叠。
点击以展开。
Code/Python10Code/com/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python10Code/com/twowater/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python10Code/com/twowater/mtest1.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
User
(
object
):
def
__init__
(
self
,
name
,
age
):
self
.
name
=
name
;
self
.
age
=
age
;
user
=
User
(
'两点水'
,
23
)
Code/Python10Code/com/twowater/mtest10.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
Number
(
object
):
def
__init__
(
self
,
value
):
self
.
value
=
value
def
__eq__
(
self
,
other
):
print
(
'__eq__'
)
return
self
.
value
==
other
.
value
def
__ne__
(
self
,
other
):
print
(
'__ne__'
)
return
self
.
value
!=
other
.
value
def
__lt__
(
self
,
other
):
print
(
'__lt__'
)
return
self
.
value
<
other
.
value
def
__gt__
(
self
,
other
):
print
(
'__gt__'
)
return
self
.
value
>
other
.
value
def
__le__
(
self
,
other
):
print
(
'__le__'
)
return
self
.
value
<=
other
.
value
def
__ge__
(
self
,
other
):
print
(
'__ge__'
)
return
self
.
value
>=
other
.
value
if
__name__
==
'__main__'
:
num1
=
Number
(
2
)
num2
=
Number
(
3
)
print
(
'num1 == num2 ? --------> {}
\n
'
.
format
(
num1
==
num2
))
print
(
'num1 != num2 ? --------> {}
\n
'
.
format
(
num1
==
num2
))
print
(
'num1 < num2 ? --------> {}
\n
'
.
format
(
num1
<
num2
))
print
(
'num1 > num2 ? --------> {}
\n
'
.
format
(
num1
>
num2
))
print
(
'num1 <= num2 ? --------> {}
\n
'
.
format
(
num1
<=
num2
))
print
(
'num1 >= num2 ? --------> {}
\n
'
.
format
(
num1
>=
num2
))
Code/Python10Code/com/twowater/mtest2.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
User
(
object
):
def
__new__
(
cls
,
*
args
,
**
kwargs
):
# 打印 __new__方法中的相关信息
print
(
'调用了 def __new__ 方法'
)
print
(
args
)
# 最后返回父类的方法
return
super
(
User
,
cls
).
__new__
(
cls
)
def
__init__
(
self
,
name
,
age
):
print
(
'调用了 def __init__ 方法'
)
self
.
name
=
name
self
.
age
=
age
if
__name__
==
'__main__'
:
usr
=
User
(
'两点水'
,
23
)
Code/Python10Code/com/twowater/mtest3.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
User
(
object
):
name
=
''
def
__setattr__
(
self
,
name
,
value
):
# 每一次属性赋值时, __setattr__都会被调用,因此不断调用自身导致无限递归了
# 会造成程序奔溃
self
.
name
=
value
if
__name__
==
'__main__'
:
user
=
User
()
user
.
name
=
'两点水'
Code/Python10Code/com/twowater/mtest4.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
User
(
object
):
def
__getattr__
(
self
,
name
):
print
(
'调用了 __getattr__ 方法'
)
return
super
(
User
,
self
).
__getattr__
(
name
)
def
__setattr__
(
self
,
name
,
value
):
print
(
'调用了 __setattr__ 方法'
)
return
super
(
User
,
self
).
__setattr__
(
name
,
value
)
def
__delattr__
(
self
,
name
):
print
(
'调用了 __delattr__ 方法'
)
return
super
(
User
,
self
).
__delattr__
(
name
)
def
__getattribute__
(
self
,
name
):
print
(
'调用了 __getattribute__ 方法'
)
return
super
(
User
,
self
).
__getattribute__
(
name
)
if
__name__
==
'__main__'
:
user
=
User
()
# 设置属性值,会调用 __setattr__
user
.
attr1
=
True
# 属性存在,只有__getattribute__调用
user
.
attr1
try
:
# 属性不存在, 先调用__getattribute__, 后调用__getattr__
user
.
attr2
except
AttributeError
:
pass
# __delattr__调用
del
user
.
attr1
Code/Python10Code/com/twowater/mtest5.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
User
(
object
):
pass
if
__name__
==
'__main__'
:
print
(
dir
(
User
()))
Code/Python10Code/com/twowater/mtest6.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
User
(
object
):
def
__init__
(
self
,
name
=
'两点水'
,
sex
=
'男'
):
self
.
sex
=
sex
self
.
name
=
name
def
__get__
(
self
,
obj
,
objtype
):
print
(
'获取 name 值'
)
return
self
.
name
def
__set__
(
self
,
obj
,
val
):
print
(
'设置 name 值'
)
self
.
name
=
val
class
MyClass
(
object
):
x
=
User
(
'两点水'
,
'男'
)
y
=
5
if
__name__
==
'__main__'
:
m
=
MyClass
()
print
(
m
.
x
)
print
(
'
\n
'
)
m
.
x
=
'三点水'
print
(
m
.
x
)
print
(
'
\n
'
)
print
(
m
.
x
)
print
(
'
\n
'
)
print
(
m
.
y
)
Code/Python10Code/com/twowater/mtest7.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
Meter
(
object
):
def
__init__
(
self
,
value
=
0.0
):
self
.
value
=
float
(
value
)
def
__get__
(
self
,
instance
,
owner
):
return
self
.
value
def
__set__
(
self
,
instance
,
value
):
self
.
value
=
float
(
value
)
class
Foot
(
object
):
def
__get__
(
self
,
instance
,
owner
):
return
instance
.
meter
*
3.2808
def
__set__
(
self
,
instance
,
value
):
instance
.
meter
=
float
(
value
)
/
3.2808
class
Distance
(
object
):
meter
=
Meter
()
foot
=
Foot
()
if
__name__
==
'__main__'
:
d
=
Distance
()
print
(
d
.
meter
,
d
.
foot
)
d
.
meter
=
1
print
(
d
.
meter
,
d
.
foot
)
d
.
meter
=
2
print
(
d
.
meter
,
d
.
foot
)
Code/Python10Code/com/twowater/mtest8.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
FunctionalList
:
''' 实现了内置类型list的功能,并丰富了一些其他方法: head, tail, init, last, drop, take '''
def
__init__
(
self
,
values
=
None
):
if
values
is
None
:
self
.
values
=
[]
else
:
self
.
values
=
values
def
__len__
(
self
):
return
len
(
self
.
values
)
def
__getitem__
(
self
,
key
):
return
self
.
values
[
key
]
def
__setitem__
(
self
,
key
,
value
):
self
.
values
[
key
]
=
value
def
__delitem__
(
self
,
key
):
del
self
.
values
[
key
]
def
__iter__
(
self
):
return
iter
(
self
.
values
)
def
__reversed__
(
self
):
return
FunctionalList
(
reversed
(
self
.
values
))
def
append
(
self
,
value
):
self
.
values
.
append
(
value
)
def
head
(
self
):
# 获取第一个元素
return
self
.
values
[
0
]
def
tail
(
self
):
# 获取第一个元素之后的所有元素
return
self
.
values
[
1
:]
def
init
(
self
):
# 获取最后一个元素之前的所有元素
return
self
.
values
[:
-
1
]
def
last
(
self
):
# 获取最后一个元素
return
self
.
values
[
-
1
]
def
drop
(
self
,
n
):
# 获取所有元素,除了前N个
return
self
.
values
[
n
:]
def
take
(
self
,
n
):
# 获取前N个元素
return
self
.
values
[:
n
]
Code/Python10Code/com/twowater/mtest9.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
FunctionalList
:
''' 实现了内置类型list的功能,并丰富了一些其他方法: head, tail, init, last, drop, take'''
def
__init__
(
self
,
values
=
None
):
if
values
is
None
:
self
.
values
=
[]
else
:
self
.
values
=
values
def
__len__
(
self
):
return
len
(
self
.
values
)
def
__getitem__
(
self
,
key
):
return
self
.
values
[
key
]
def
__setitem__
(
self
,
key
,
value
):
self
.
values
[
key
]
=
value
def
__delitem__
(
self
,
key
):
del
self
.
values
[
key
]
def
__iter__
(
self
):
return
iter
(
self
.
values
)
def
__reversed__
(
self
):
return
FunctionalList
(
reversed
(
self
.
values
))
def
append
(
self
,
value
):
self
.
values
.
append
(
value
)
def
head
(
self
):
# 获取第一个元素
return
self
.
values
[
0
]
def
tail
(
self
):
# 获取第一个元素之后的所有元素
return
self
.
values
[
1
:]
def
init
(
self
):
# 获取最后一个元素之前的所有元素
return
self
.
values
[:
-
1
]
def
last
(
self
):
# 获取最后一个元素
return
self
.
values
[
-
1
]
def
drop
(
self
,
n
):
# 获取所有元素,除了前N个
return
self
.
values
[
n
:]
def
take
(
self
,
n
):
# 获取前N个元素
return
self
.
values
[:
n
]
Code/Python11Code/.idea/Python11Code.iml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<module
type=
"PYTHON_MODULE"
version=
"4"
>
<component
name=
"NewModuleRootManager"
>
<content
url=
"file://$MODULE_DIR$"
/>
<orderEntry
type=
"inheritedJdk"
/>
<orderEntry
type=
"sourceFolder"
forTests=
"false"
/>
</component>
<component
name=
"TestRunnerService"
>
<option
name=
"PROJECT_TEST_RUNNER"
value=
"Unittests"
/>
</component>
</module>
\ No newline at end of file
Code/Python11Code/.idea/inspectionProfiles/profiles_settings.xml
已删除
100644 → 0
浏览文件 @
2add141c
<component
name=
"InspectionProjectProfileManager"
>
<settings>
<option
name=
"useProjectProfile"
value=
"false"
/>
<option
name=
"USE_PROJECT_PROFILE"
value=
"false"
/>
<version
value=
"1.0"
/>
</settings>
</component>
\ No newline at end of file
Code/Python11Code/.idea/misc.xml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectRootManager"
version=
"2"
project-jdk-name=
"Python 3.6.1 (C:\Users\Administrator\AppData\Local\Programs\Python\Python36\python.exe)"
project-jdk-type=
"Python SDK"
/>
</project>
\ No newline at end of file
Code/Python11Code/.idea/modules.xml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectModuleManager"
>
<modules>
<module
fileurl=
"file://$PROJECT_DIR$/.idea/Python11Code.iml"
filepath=
"$PROJECT_DIR$/.idea/Python11Code.iml"
/>
</modules>
</component>
</project>
\ No newline at end of file
Code/Python11Code/.idea/workspace.xml
已删除
100644 → 0
浏览文件 @
2add141c
此差异已折叠。
点击以展开。
Code/Python11Code/com/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python11Code/com/twowater/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python11Code/com/twowater/mtest1.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
from
enum
import
Enum
Month
=
Enum
(
'Month'
,
(
'Jan'
,
'Feb'
,
'Mar'
,
'Apr'
,
'May'
,
'Jun'
,
'Jul'
,
'Aug'
,
'Sep'
,
'Oct'
,
'Nov'
,
'Dec'
))
# 遍历枚举类型
for
name
,
member
in
Month
.
__members__
.
items
():
print
(
name
,
'---------'
,
member
,
'----------'
,
member
.
value
)
# 直接引用一个常量
print
(
'
\n
'
,
Month
.
Jan
)
Code/Python11Code/com/twowater/mtest2.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
from
enum
import
Enum
,
unique
Enum
(
'Month'
,
(
'Jan'
,
'Feb'
,
'Mar'
,
'Apr'
,
'May'
,
'Jun'
,
'Jul'
,
'Aug'
,
'Sep'
,
'Oct'
,
'Nov'
,
'Dec'
))
# @unique 装饰器可以帮助我们检查保证没有重复值
@
unique
class
Month
(
Enum
):
Jan
=
'January'
Feb
=
'February'
Mar
=
'March'
Apr
=
'April'
May
=
'May'
Jun
=
'June'
Jul
=
'July'
Aug
=
'August'
Sep
=
'September '
Oct
=
'October'
Nov
=
'November'
Dec
=
'December'
if
__name__
==
'__main__'
:
print
(
Month
.
Jan
,
'----------'
,
Month
.
Jan
.
name
,
'----------'
,
Month
.
Jan
.
value
)
for
name
,
member
in
Month
.
__members__
.
items
():
print
(
name
,
'----------'
,
member
,
'----------'
,
member
.
value
)
Code/Python11Code/com/twowater/mtest3.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
from
enum
import
Enum
class
User
(
Enum
):
Twowater
=
98
Liangdianshui
=
30
Tom
=
12
Twowater
=
User
.
Twowater
Liangdianshui
=
User
.
Liangdianshui
print
(
Twowater
==
Liangdianshui
,
Twowater
==
User
.
Twowater
)
print
(
Twowater
is
Liangdianshui
,
Twowater
is
User
.
Twowater
)
try
:
print
(
'
\n
'
.
join
(
' '
+
s
.
name
for
s
in
sorted
(
User
)))
except
TypeError
as
err
:
print
(
' Error : {}'
.
format
(
err
))
Code/Python11Code/com/twowater/mtest4.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import
enum
class
User
(
enum
.
IntEnum
):
Twowater
=
98
Liangdianshui
=
30
Tom
=
12
try
:
print
(
'
\n
'
.
join
(
s
.
name
for
s
in
sorted
(
User
)))
except
TypeError
as
err
:
print
(
' Error : {}'
.
format
(
err
))
Code/Python14Code/.idea/Python14Code.iml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<module
type=
"PYTHON_MODULE"
version=
"4"
>
<component
name=
"NewModuleRootManager"
>
<content
url=
"file://$MODULE_DIR$"
/>
<orderEntry
type=
"inheritedJdk"
/>
<orderEntry
type=
"sourceFolder"
forTests=
"false"
/>
</component>
<component
name=
"TestRunnerService"
>
<option
name=
"PROJECT_TEST_RUNNER"
value=
"Unittests"
/>
</component>
</module>
\ No newline at end of file
Code/Python14Code/.idea/inspectionProfiles/profiles_settings.xml
已删除
100644 → 0
浏览文件 @
2add141c
<component
name=
"InspectionProjectProfileManager"
>
<settings>
<option
name=
"useProjectProfile"
value=
"false"
/>
<option
name=
"USE_PROJECT_PROFILE"
value=
"false"
/>
<version
value=
"1.0"
/>
</settings>
</component>
\ No newline at end of file
Code/Python14Code/.idea/misc.xml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectRootManager"
version=
"2"
project-jdk-name=
"Python 3.6.1 (C:\Users\Administrator\AppData\Local\Programs\Python\Python36\python.exe)"
project-jdk-type=
"Python SDK"
/>
</project>
\ No newline at end of file
Code/Python14Code/.idea/modules.xml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectModuleManager"
>
<modules>
<module
fileurl=
"file://$PROJECT_DIR$/.idea/Python14Code.iml"
filepath=
"$PROJECT_DIR$/.idea/Python14Code.iml"
/>
</modules>
</component>
</project>
\ No newline at end of file
Code/Python14Code/.idea/workspace.xml
已删除
100644 → 0
浏览文件 @
2add141c
此差异已折叠。
点击以展开。
Code/Python14Code/com/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python14Code/com/twowater/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python14Code/com/twowater/test1.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import
re
# 设定一个常量
a
=
'两点水|twowater|liangdianshui|草根程序员|ReadingWithU'
# 判断是否有 “两点水” 这个字符串,使用 PY 自带函数
print
(
'a 是否含有“两点水”这个字符串:{0}'
.
format
(
a
.
index
(
'两点水'
)
>
-
1
))
print
(
'a 是否含有“两点水”这个字符串:{0}'
.
format
(
'两点水'
in
a
))
# 正则表达式
findall
=
re
.
findall
(
'两点水'
,
a
)
print
(
findall
)
if
len
(
findall
)
>
0
:
print
(
'a 含有“两点水”这个字符串'
)
else
:
print
(
'a 不含有“两点水”这个字符串'
)
# 选择 a 里面的所有小写英文字母
re_findall
=
re
.
findall
(
'[a-z]'
,
a
)
print
(
re_findall
)
Code/Python14Code/com/twowater/test2.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import
re
a
=
'uav,ubv,ucv,uwv,uzv,ucv,uov'
# 字符集
# 取 u 和 v 中间是 a 或 b 或 c 的字符
findall
=
re
.
findall
(
'u[abc]v'
,
a
)
print
(
findall
)
# 如果是连续的字母,数字可以使用 - 来代替
l
=
re
.
findall
(
'u[a-c]v'
,
a
)
print
(
l
)
# 取 u 和 v 中间不是 a 或 b 或 c 的字符
re_findall
=
re
.
findall
(
'u[^abc]v'
,
a
)
print
(
re_findall
)
Code/Python14Code/com/twowater/test3.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import
re
a
=
'uav_ubv_ucv_uwv_uzv_ucv_uov&123-456-789'
# 概括字符集
# \d 相当于 [0-9] ,匹配所有数字字符
# \D 相当于 [^0-9] , 匹配所有非数字字符
findall1
=
re
.
findall
(
'\d'
,
a
)
findall2
=
re
.
findall
(
'[0-9]'
,
a
)
findall3
=
re
.
findall
(
'\D'
,
a
)
findall4
=
re
.
findall
(
'[^0-9]'
,
a
)
print
(
findall1
)
print
(
findall2
)
print
(
findall3
)
print
(
findall4
)
# \w 匹配包括下划线的任何单词字符,等价于 [A-Za-z0-9_]
findall5
=
re
.
findall
(
'\w'
,
a
)
findall6
=
re
.
findall
(
'[A-Za-z0-9_]'
,
a
)
print
(
findall5
)
print
(
findall6
)
Code/Python14Code/com/twowater/test4.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import
re
a
=
'java*&39android##@@python'
# 数量词
findall
=
re
.
findall
(
'[a-z]{4,7}'
,
a
)
print
(
findall
)
# 贪婪与非贪婪
re_findall
=
re
.
findall
(
'[a-z]{4,7}?'
,
a
)
print
(
re_findall
)
Code/Python14Code/com/twowater/test5.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import
re
a
=
'347073565'
# 边界匹配符
findall
=
re
.
findall
(
'\d{6}565$'
,
a
)
print
(
findall
)
Code/Python14Code/com/twowater/test6.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import
re
a
=
'pythonpythonpython'
# 组
findall
=
re
.
findall
(
'(python){3}'
,
a
)
print
(
findall
)
Code/Python14Code/com/twowater/test7.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import
re
a
=
'Python*Android*Java-888'
# 把字符串中的 * 字符替换成 & 字符
sub1
=
re
.
sub
(
'\*'
,
'&'
,
a
)
print
(
sub1
)
# 把字符串中的第一个 * 字符替换成 & 字符
sub2
=
re
.
sub
(
'\*'
,
'&'
,
a
,
1
)
print
(
sub2
)
# 把字符串中的 * 字符替换成 & 字符,把字符 - 换成 |
# 1、先定义一个函数
def
convert
(
value
):
group
=
value
.
group
()
if
(
group
==
'*'
):
return
'&'
elif
(
group
==
'-'
):
return
'|'
# 第二个参数,要替换的字符可以为一个函数
sub3
=
re
.
sub
(
'[\*-]'
,
convert
,
a
)
print
(
sub3
)
Code/Python14Code/com/twowater/test8.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
# 提取图片的地址
import
re
a
=
'<img src="https://s-media-cache-ak0.pinimg.com/originals/a8/c4/9e/a8c49ef606e0e1f3ee39a7b219b5c05e.jpg">'
# 使用 re.search
search
=
re
.
search
(
'<img src="(.*)">'
,
a
)
# group(0) 是一个完整的分组
print
(
search
.
group
(
0
))
print
(
search
.
group
(
1
))
# 使用 re.findall
findall
=
re
.
findall
(
'<img src="(.*)">'
,
a
)
print
(
findall
)
# 多个分组的使用(比如我们需要提取 img 字段和图片地址字段)
re_search
=
re
.
search
(
'<(.*) src="(.*)">'
,
a
)
# 打印 img
print
(
re_search
.
group
(
1
))
# 打印图片地址
print
(
re_search
.
group
(
2
))
# 打印 img 和图片地址,以元祖的形式
print
(
re_search
.
group
(
1
,
2
))
# 或者使用 groups
print
(
re_search
.
groups
())
Code/Python8Code/.idea/Python8Code.iml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<module
type=
"PYTHON_MODULE"
version=
"4"
>
<component
name=
"NewModuleRootManager"
>
<content
url=
"file://$MODULE_DIR$"
/>
<orderEntry
type=
"inheritedJdk"
/>
<orderEntry
type=
"sourceFolder"
forTests=
"false"
/>
</component>
<component
name=
"TestRunnerService"
>
<option
name=
"PROJECT_TEST_RUNNER"
value=
"Unittests"
/>
</component>
</module>
\ No newline at end of file
Code/Python8Code/.idea/inspectionProfiles/profiles_settings.xml
已删除
100644 → 0
浏览文件 @
2add141c
<component
name=
"InspectionProjectProfileManager"
>
<settings>
<option
name=
"useProjectProfile"
value=
"false"
/>
<option
name=
"USE_PROJECT_PROFILE"
value=
"false"
/>
<version
value=
"1.0"
/>
</settings>
</component>
\ No newline at end of file
Code/Python8Code/.idea/misc.xml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectRootManager"
version=
"2"
project-jdk-name=
"Python 3.6.1 (C:\Users\Administrator\AppData\Local\Programs\Python\Python36\python.exe)"
project-jdk-type=
"Python SDK"
/>
</project>
\ No newline at end of file
Code/Python8Code/.idea/modules.xml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectModuleManager"
>
<modules>
<module
fileurl=
"file://$PROJECT_DIR$/.idea/Python8Code.iml"
filepath=
"$PROJECT_DIR$/.idea/Python8Code.iml"
/>
</modules>
</component>
</project>
\ No newline at end of file
Code/Python8Code/.idea/workspace.xml
已删除
100644 → 0
浏览文件 @
2add141c
此差异已折叠。
点击以展开。
Code/Python8Code/com/Learn/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python8Code/com/Learn/module/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python8Code/com/Learn/module/nameattributes/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python8Code/com/Learn/module/nameattributes/__pycache__/lname.cpython-36.pyc
已删除
100644 → 0
浏览文件 @
2add141c
文件已删除
Code/Python8Code/com/Learn/module/nameattributes/lname.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
if
__name__
==
'__main__'
:
print
(
'main'
)
else
:
print
(
'not main'
)
Code/Python8Code/com/Learn/module/nameattributes/user_lname.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import
lname
Code/Python8Code/com/Learn/module/privateattributes/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python8Code/com/Learn/module/privateattributes/vip_user.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
def
_diamond_vip
(
lv
):
print
(
'尊敬的钻石会员用户,您好'
)
vip_name
=
'DiamondVIP'
+
str
(
lv
)
return
vip_name
def
_gold_vip
(
lv
):
print
(
'尊敬的黄金会员用户,您好'
)
vip_name
=
'GoldVIP'
+
str
(
lv
)
return
vip_name
def
vip_lv_name
(
lv
):
if
lv
==
1
:
print
(
_gold_vip
(
lv
))
elif
lv
==
2
:
print
(
_diamond_vip
(
lv
))
vip_lv_name
(
2
)
Code/Python8Code/com/Learn/module/sys/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python8Code/com/Learn/module/sys/test_sys.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import
sys
print
(
sys
.
path
)
\ No newline at end of file
Code/Python8Code/com/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python9Code/.idea/Python9Code.iml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<module
type=
"PYTHON_MODULE"
version=
"4"
>
<component
name=
"NewModuleRootManager"
>
<content
url=
"file://$MODULE_DIR$"
/>
<orderEntry
type=
"inheritedJdk"
/>
<orderEntry
type=
"sourceFolder"
forTests=
"false"
/>
</component>
<component
name=
"TestRunnerService"
>
<option
name=
"PROJECT_TEST_RUNNER"
value=
"Unittests"
/>
</component>
</module>
\ No newline at end of file
Code/Python9Code/.idea/inspectionProfiles/profiles_settings.xml
已删除
100644 → 0
浏览文件 @
2add141c
<component
name=
"InspectionProjectProfileManager"
>
<settings>
<option
name=
"useProjectProfile"
value=
"false"
/>
<option
name=
"USE_PROJECT_PROFILE"
value=
"false"
/>
<version
value=
"1.0"
/>
</settings>
</component>
\ No newline at end of file
Code/Python9Code/.idea/misc.xml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectRootManager"
version=
"2"
project-jdk-name=
"Python 3.6.1 (C:\Users\Administrator\AppData\Local\Programs\Python\Python36\python.exe)"
project-jdk-type=
"Python SDK"
/>
</project>
\ No newline at end of file
Code/Python9Code/.idea/modules.xml
已删除
100644 → 0
浏览文件 @
2add141c
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectModuleManager"
>
<modules>
<module
fileurl=
"file://$PROJECT_DIR$/.idea/Python9Code.iml"
filepath=
"$PROJECT_DIR$/.idea/Python9Code.iml"
/>
</modules>
</component>
</project>
\ No newline at end of file
Code/Python9Code/.idea/workspace.xml
已删除
100644 → 0
浏览文件 @
2add141c
此差异已折叠。
点击以展开。
Code/Python9Code/com/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python9Code/com/twowater/__init__.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
\ No newline at end of file
Code/Python9Code/com/twowater/mtest0.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
Test
:
def
prt
(
self
):
print
(
self
)
print
(
self
.
__class__
)
t
=
Test
()
t
.
prt
()
\ No newline at end of file
Code/Python9Code/com/twowater/mtest1.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
# 旧式类
class
OldClass
:
def
__init__
(
self
,
account
,
name
):
self
.
account
=
account
;
self
.
name
=
name
;
# 新式类
class
NewClass
(
object
):
def
__init__
(
self
,
account
,
name
):
self
.
account
=
account
;
self
.
name
=
name
;
if
__name__
==
'__main__'
:
old_class
=
OldClass
(
111111
,
'OldClass'
)
print
(
old_class
)
print
(
type
(
old_class
))
print
(
dir
(
old_class
))
print
(
'
\n
'
)
new_class
=
NewClass
(
222222
,
'NewClass'
)
print
(
new_class
)
print
(
type
(
new_class
))
print
(
dir
(
new_class
))
Code/Python9Code/com/twowater/mtest2.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
class
UserInfo
(
object
):
name
=
'两点水'
class
UserInfo
(
object
):
def
__init__
(
self
,
name
):
self
.
name
=
name
class
UserInfo
(
object
):
def
__init__
(
self
,
name
,
age
,
account
):
self
.
name
=
name
self
.
_age
=
age
self
.
__account
=
account
Code/Python9Code/com/twowater/mtest3.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
class
UserInfo
(
object
):
def
__init__
(
self
,
name
,
age
,
account
):
self
.
name
=
name
self
.
_age
=
age
self
.
__account
=
account
def
get_account
(
self
):
return
self
.
__account
if
__name__
==
'__main__'
:
userInfo
=
UserInfo
(
'两点水'
,
23
,
347073565
);
# 打印所有属性
print
(
dir
(
userInfo
))
# 打印构造函数中的属性
print
(
userInfo
.
__dict__
)
print
(
userInfo
.
get_account
())
# 用于验证双下划线是否是真正的私有属性
print
(
userInfo
.
_UserInfo__account
)
Code/Python9Code/com/twowater/mtest4.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
class
User
(
object
):
def
upgrade
(
self
):
pass
def
_buy_equipment
(
self
):
pass
def
__pk
(
self
):
pass
Code/Python9Code/com/twowater/mtest5.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
class
UserInfo
(
object
):
lv
=
5
def
__init__
(
self
,
name
,
age
,
account
):
self
.
name
=
name
self
.
_age
=
age
self
.
__account
=
account
def
get_account
(
self
):
return
self
.
__account
@
classmethod
def
get_name
(
cls
):
return
cls
.
lv
@
property
def
get_age
(
self
):
return
self
.
_age
if
__name__
==
'__main__'
:
userInfo
=
UserInfo
(
'两点水'
,
23
,
347073565
);
# 打印所有属性
print
(
dir
(
userInfo
))
# 打印构造函数中的属性
print
(
userInfo
.
__dict__
)
# 直接使用类名类调用,而不是某个对象
print
(
UserInfo
.
lv
)
# 像访问属性一样调用方法(注意看get_age是没有括号的)
print
(
userInfo
.
get_age
)
Code/Python9Code/com/twowater/mtest6.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
UserInfo
(
object
):
lv
=
5
def
__init__
(
self
,
name
,
age
,
account
):
self
.
name
=
name
self
.
_age
=
age
self
.
__account
=
account
def
get_account
(
self
):
return
self
.
__account
@
classmethod
def
get_name
(
cls
):
return
cls
.
lv
@
property
def
get_age
(
self
):
return
self
.
_age
class
UserInfo2
(
UserInfo
):
def
__init__
(
self
,
name
,
age
,
account
,
sex
):
super
(
UserInfo2
,
self
).
__init__
(
name
,
age
,
account
)
self
.
sex
=
sex
;
if
__name__
==
'__main__'
:
userInfo2
=
UserInfo2
(
'两点水'
,
23
,
347073565
,
'男'
);
# 打印所有属性
print
(
dir
(
userInfo2
))
# 打印构造函数中的属性
print
(
userInfo2
.
__dict__
)
print
(
UserInfo2
.
get_name
())
Code/Python9Code/com/twowater/mtest7.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
class
UserInfo
(
object
):
lv
=
5
def
__init__
(
self
,
name
,
age
,
account
):
self
.
name
=
name
self
.
_age
=
age
self
.
__account
=
account
def
get_account
(
self
):
return
self
.
__account
class
UserInfo2
(
UserInfo
):
pass
if
__name__
==
'__main__'
:
userInfo2
=
UserInfo2
(
'两点水'
,
23
,
347073565
);
print
(
userInfo2
.
get_account
())
Code/Python9Code/com/twowater/mtest8.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
User1
(
object
):
pass
class
User2
(
User1
):
pass
class
User3
(
User2
):
pass
if
__name__
==
'__main__'
:
user1
=
User1
()
user2
=
User2
()
user3
=
User3
()
# isinstance()就可以告诉我们,一个对象是否是某种类型
print
(
isinstance
(
user3
,
User2
))
print
(
isinstance
(
user3
,
User1
))
print
(
isinstance
(
user3
,
User3
))
# 基本类型也可以用isinstance()判断
print
(
isinstance
(
'两点水'
,
str
))
print
(
isinstance
(
347073565
,
int
))
print
(
isinstance
(
347073565
,
str
))
Code/Python9Code/com/twowater/mtest9.py
已删除
100644 → 0
浏览文件 @
2add141c
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
class
User
(
object
):
def
__init__
(
self
,
name
):
self
.
name
=
name
def
printUser
(
self
):
print
(
'Hello !'
+
self
.
name
)
class
UserVip
(
User
):
def
printUser
(
self
):
print
(
'Hello ! 尊敬的Vip用户:'
+
self
.
name
)
class
UserGeneral
(
User
):
def
printUser
(
self
):
print
(
'Hello ! 尊敬的用户:'
+
self
.
name
)
def
printUserInfo
(
user
):
user
.
printUser
()
if
__name__
==
'__main__'
:
userVip
=
UserVip
(
'两点水'
)
printUserInfo
(
userVip
)
userGeneral
=
UserGeneral
(
'水水水'
)
printUserInfo
(
userGeneral
)
README.md
浏览文件 @
c9ba8dd5
...
...
@@ -124,7 +124,7 @@ IT 行业相对于一般传统行业,发展更新速度更快,一旦停止
Python 下有许多款不同的 Web 框架。Django 是重量级选手中最有代表性的一位。许多成功的网站和 APP 都基于 Django。
如果对自己的基础有点信息的童鞋,可以尝试通过国外的
!
[
Django 博客从搭建到部署系列教程
](
https://simpleisbetterthancomplex.com/series/2017/09/04/a-complete-beginners-guide-to-django-part-1.html
)
进行入门,这个教程讲的非常的详细,而且还有很多有趣的配图。不过可能因为墙的原因,很多人会访问不到,就算访问到了,也因为是英语的,不会进行耐心的阅读学习。因此我打算翻译这个教程。
如果对自己的基础有点信息的童鞋,可以尝试通过国外的
[
Django 博客从搭建到部署系列教程
](
https://simpleisbetterthancomplex.com/series/2017/09/04/a-complete-beginners-guide-to-django-part-1.html
)
进行入门,这个教程讲的非常的详细,而且还有很多有趣的配图。不过可能因为墙的原因,很多人会访问不到,就算访问到了,也因为是英语的,不会进行耐心的阅读学习。因此我打算翻译这个教程。
*
[
一个完整的初学者指南Django-part1
](
/Article/django/一个完整的初学者指南Django-part1.md
)
*
[
一个完整的初学者指南Django-part2
](
/Article/django/一个完整的初学者指南Django-part2.md
)
...
...
@@ -136,3 +136,5 @@ Python 下有许多款不同的 Web 框架。Django 是重量级选手中最有
持续更新....
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录