博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python入门
阅读量:4973 次
发布时间:2019-06-12

本文共 6844 字,大约阅读时间需要 22 分钟。

变量

一、定义方式

  • 下划线(推荐使用) age_of_oldboy = 56
  • 变量名只能是 字母、数字或下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 关键字不能声明为变量名['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

二、id、type、value、is、in、hash

  • 身份:即内存地址,可以用id()来获取
  • 类型:决定了该对象保存的类型,需要遵循什么规则,可用type()来获取该数据类型
  • 值:对象的保存的的真实数据
  • 等号比较的是value
  • is比较的是id
  • id相同,意味着type和value必定相同
  • value相同type肯定相同,但id可能不同
  • 可变:值变,id不变。可变==不可hash
  • 不可变:值变,id就变。不可变==可hash
  • is运算符用于比较两个对象的身份
  • in主要用来判断某一元素是否在某种元素集合中
  • 可hash的就是不可变数据类型,不可hash的就是可变数据类型

三、类型分类

  • 可变类型:在id不变的情况下,value可以变,则称为可变类型,如列表,字典
  • 不可变类型:value一旦改变,id也改变,则称为不可变类型(id变,意味着创建了新的内存空间)

常量

  • 常量即指不变的量,如圆周率 3.1415926..., 在Python中没有一个专门的语法代表常量,程序员约定俗成用变量名全部大写代表常量AREAS = 56

程序交互

  • 在python3中 input:用户输入任何值,都存成字符串类型
1
2
age
=
input
(
'your age:'
).strip()
print
(age,
type
(age)) 
#18 <class 'str'>

一、文件头

  • #!/usr/bin/env python
  • # -*- coding: utf-8 -*-

二、注释

  • 代码注释分单行和多行注释, 单行注释用#
  • 多行注释可以用三对双引号""" """

range

  • range用来指定范围,生成指定的数字。
1
2
3
4
5
6
7
for
item
in
range
(
5
,
10
,
2
):
    
print
(item)
"""
5
7
9
"""

基本数据类型

  • 数据即变量的值,变量的是用来反映/保持状态以及状态变化的,毫无疑问针对不同的状态就应该用不同类型的数据去标识

一、数字

1、int整型

  • 定义:age=10 #age=int(10)
  • 用于标识:年龄,等级,身份证号,qq号,个数

2.float浮点型

  • 定义:salary=3.1 #salary=float(3.1)
  • 用于标识:工资,身高,体重

二、布尔

  • 判断一个条件成立时,用True标识,不成立则用False标识
  • *****None,0,空(空字符串,空列表,空字典等)三种情况下布尔值为False*****

三、字符串

  • 定义:name='tom' #name=str('tom')
  • 用于标识:描述性的内容,如姓名,性别,国籍,种族
  • 加了引号的字符就是字符串类型,单引号、双引号、多引号都一样,注意单双引号的嵌套
1
2
3
4
5
6
7
8
s
=
"watch ,'套路'"
#多行字符串必须用多引号
msg
=
'''
种一棵树最好的时间是十年前,其次是现在。
所有的成功都是你行动以后对你行动的奖励。
'''
print
(s) 
#watch ,'套路'
print
(msg)

四、列表

  • 在[]内用逗号分隔,可以存放n个任意类型的值
  • 定义:students=['tom','rose','jack',] #students=list(['tom','rose','jack',])
  • 用于标识:存储多个值的情况,比如一个人有多个爱好
  • 列表嵌套和取值
1
2
students_info
=
[[
'tom'
,
18
,[
'sing'
,]],[
'rose'
,
18
,[
'play'
,
'sleep'
]]]
print
(students_info[
0
][
2
][
0
])
#取出第一个学生的第一个爱好 #sing

五、字典

  • 可以存放多个任意类型的值,又可以规定值的映射关系的类型
  • 在{}内用逗号分隔,可以存放多个key:value的值,value可以是任意类型
  • 定义:info={'name':'tom','age':18,'gender':18} #info=dict({'name':'tom','age':18,'gender':18})
  • 用于标识:存储多个值的情况,每个值都有唯一一个对应的key,可以更为方便高效地取值
  • 字典嵌套和取值
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
info
=
{
    
'name'
:
'tom'
,
    
'hobbies'
:[
'sing'
,
'sleep'
],
    
'company'
:{
        
'name'
:
'google'
,
        
'type'
:
'it'
,
        
'fund'
:
8000000000
,
    
}
}
print
(info[
'company'
][
'fund'
])
#取公司现金储备 #8000000000
 
students
=
[
    
{
'name'
:
'tom'
,
'age'
:
18
,
'hobbies'
:[
'sing'
,
'play'
]},
    
{
'name'
:
'rose'
,
'age'
:
88
,
'hobbies'
:[
'read'
,
'sleep'
]},
    
{
'name'
:
'jack'
,
'age'
:
99
,
'hobbies'
:[
'swim'
,
'watchTV'
,
'talk'
]},
]
print
(students[
2
][
'hobbies'
][
1
])
#取第3个学生的第2个爱好watchTV

流程控制之if...else

1
2
3
4
5
6
7
8
9
10
11
12
"""
rose --> 超级管理员
tom  --> 普通管理员
其他 --> 普通用户
"""
name
=
input
(
'请输入用户名字:'
).strip()
if
name
=
=
'rose'
:
    
print
(
'超级管理员'
)
elif
name
=
=
'tom'
:
    
print
(
'普通管理员'
)
else
:
    
print
(
'普通用户'
)

流程控制之while循环

一、条件循环

1
2
3
4
5
count
=
0
while
count <
=
10
:
    
if
count
%
2
=
=
0
:
        
print
(
'loop'
,count)
    
count
+
=
1

二、死循环

1
2
while
True
:
    
print
(
'hello world'
)

三、循环嵌套与tag

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
name
=
'tom'
password
=
'123'
 
tag
=
True
while
tag:
    
inp_name
=
input
(
'用户名: '
).strip()
    
inp_pwd
=
input
(
'密码: '
).strip()
    
if
inp_name
=
=
name
and
inp_pwd
=
=
password:
        
while
tag:
            
cmd
=
input
(
'>>: '
)
            
if
not
cmd:
continue
            
if
cmd
=
=
'q'
:
                
tag
=
False
                
continue
            
print
(
'run <%s>'
%
cmd)
    
else
:
        
print
(
'用户名或密码错误'
)

四、break与continue

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#break用于退出本层循环
while
True
:
    
print
(
'go...'
)
    
break
    
print
(
'stop'
)
#只打印go...  就退出了,下面的 print('stop')根本不执行
 
#continue用于退出本次循环,继续下一次循环
while
True
:
    
print
(
'go...'
)
    
continue
    
print
(
'stop'
)
 
#打印go...  就退出本次循环,本次循环下面的 print('stop')根本来不及执行,就继续下一次循环,所有一直打印 go... 也就是死循环了

五、while+else和for+else

  • 其它语言else 一般只与if 搭配不同
  • 在Python 中还有个while ...else 语句和for ...else 语句
  • while 后面的else 作用是指当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句
  • for 后面的else 作用是指当for 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句
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
count
=
0
while
count <
=
5
:
    
count
+
=
1
    
print
(
"Loop"
,count)
else
:
    
print
(
"循环正常执行完啦"
)
print
(
"-----out of while loop ------"
)
"""
Loop 1
Loop 2
Loop 3
Loop 4
Loop 5
Loop 6
循环正常执行完啦
-----out of while loop ------
"""
 
#如果执行过程中被break,就不会执行else的语句
count
=
0
while
count <
=
5
:
    
count
+
=
1
    
if
count
=
=
3
:
break
    
print
(
"Loop"
,count)
else
:
    
print
(
"循环正常执行完啦"
)
print
(
"-----out of while loop ------"
)
 
"""
Loop 1
Loop 2
-----out of while loop ------
"""

流程控制之for循环

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
for
i
in
range
(
1
,
10
):
    
for
j
in
range
(
1
,i
+
1
):
        
print
(
'%s*%s=%s'
%
(i,j,i
*
j),end
=
' '
)
    
print
()
 
"""
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
"""
 
 
max_level
=
6
for
cur_level
in
range
(
1
,max_level
+
1
):
    
for
i
in
range
(max_level
-
cur_level):
        
print
(
' '
,end
=
'')
#在一行中连续打印多个空格
    
for
j
in
range
(
2
*
cur_level
-
1
):
        
print
(
'*'
,end
=
'')
#在一行中连续打印多个空格
    
print
()
 
"""
     
*
    
***
   
*****
  
*******
 
*********
***********
"""

规范代码

断点调试

无需为程序所有代码加断点,只需要在关键代码加上断点,以debug模式调试时,程序会停在断点处。

基本运算符

一、算数元算:

  

二、比较运算

  

三、赋值运算符

  

四、逻辑运算

  

五、成员运算

  

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
#字符串
st
=
"abcdefg"
s
=
"d"
if
s
in
st:
    
print
(
"in st"
)
else
:
    
print
(
"not in st"
)
 
#列表
lis
=
[
1
,
2
,
3
,
4
]
li
=
5
if
li
in
lis:
    
print
(
"in lis"
)
else
:
    
print
(
"not in lis"
)
 
#元组
tup
=
(
1
,
2
,
3
,
4
)
t
=
2
if
t
in
tup:
    
print
(
"in tup"
)
else
:
    
print
(
"not in tup"
)
 
#字典 判断的是key
dic
=
{
'name'
:
'tom'
,
'age'
:
18
}
d
=
'name'
if
d
in
dic:
    
print
(
"in dic"
)
else
:
    
print
(
"not in dic"
)
 
#集合
sett
=
{
18
,
'age'
,
'name'
,
20
}
se
=
'name'
if
se
in
sett:
    
print
(
"in sett"
)
else
:
    
print
(
"not in sett"
)

六、其他

#格式:  设置颜色开始 :\033[显示方式;前景色;背景色m#说明:前景色            背景色           颜色---------------------------------------30                40              黑色31                41              红色32                42              绿色33                43              黃色34                44              蓝色35                45              紫红色36                46              青蓝色37                47              白色显示方式           意义-------------------------0                终端默认设置1                高亮显示4                使用下划线5                闪烁7                反白显示8                不可见 #例子:\033[1;31;40m    
\033[0m
print('\033[0;32;40m欢迎使用学生选课系统\033[0m')try: num = int(input('请输入数字选择功能 :'))except Exception as e: print('\033[31m对不起!您输入的内容有误~\033[0m')
颜色

转载于:https://www.cnblogs.com/bubu99/p/10166187.html

你可能感兴趣的文章
电影《绿皮书》
查看>>
IDEA使用操作文档
查看>>
如何对网课、游戏直播等进行录屏
查看>>
UIView
查看>>
添加日期选择控件
查看>>
jquery.cookie.js操作cookie
查看>>
javascript遍历数组
查看>>
bzoj4765: 普通计算姬 (分块 && BIT)
查看>>
thinkphp5-----模板中函数的使用
查看>>
POJ-3211 Washing Clothes[01背包问题]
查看>>
[BZOJ4832][Lydsy1704月赛]抵制克苏恩
查看>>
数据库三范式
查看>>
看完漫画秒懂区块链
查看>>
开发工具,做一个有效率的开发者
查看>>
对Haskell这门语言的基本认识
查看>>
mysql 安装补充
查看>>
大学里如何学习 ?
查看>>
Oracle命令类别
查看>>
js面试题:关于数组去重的四种方法总结
查看>>
Linux内核分析(三)----初识linux内存管理子系统
查看>>