PYTHON入门学习 - ONE

PYTHON

简介

  • PYTHON3的所有常用语法
  • 面向对象编程思维
  • 运用模块进行编程
  • 游戏编程
  • 计算机仿真

IDLE是一个PYTHON Shell,shell的意思就是“外壳”,是通过键入文本与程序交互的途径,类似于windows的CMD

第一节:

实例1

print('----小游戏----')
temp = input("不妨猜一下我在想哪个数字:")
guess = int(temp)
if guess == 8:
    print("successfully!")
else:
    print("once again!")
print("game over !")

缩进

变量不需要声明,函数不需要{},在PYTHON用缩进

  • == 判断是否相等 = 赋值

  • input返回值给 temp-从右->左 int(temp)整型

内置函数

BIF – Built-in functions

dir(__builtins__) //PYTHON内置函数库
help(input) //查找该函数的用法

第二节:

变量

将一个值赋值给一个名字时,会存储在内存中,称之为变量(variable),给变量赋值

  • PYTHON与大多数语言稍有不同,它不是把值存储在变量中,更像是将名字贴在值上面

    PYTHON没有变量,只有名字

  • 使用变量是应该先赋值

  • 变量名可以包括字母、数字、下划线、变量名不可以以数字开头

  • PYTHON变量名对大小写敏感

>>> first = 3 //= 为赋值的意思,左边为名字,右边为值
>>> second = 8
>>> third = first + second
>>> print(third)
11

拼接字符串

>>> myteacher = 'BYF'
>>> yourteacher = 'byf'
>>> ourteacher = myteacher + yourteacher //拼接字符串
>>> print(ourteacher)
BYFbyf

加法、拼接字符

>>>5+8
13
>>>'5'+'8' //字符串用''闭合
'58'

转义字符

>>> 'Let's go!'
SyntaxError: invalid syntax
>>> 'Let\'s go!' //使用转义符号\
"Let's go!"

原始字符串

原始字符串
>>> str = 'C:\now'
>>> str
'C:\now'
>>> print(str)
C:
ow
>>> str = 'C:\\now'
>>> print(str)
C:\now
>>> str = r'C:\now\123\a'
>>> str
'C:\\now\\123\\a'

长字符串(三重引号)

长字符串
三重引号字符串""""""
>>> str = """ 1
2
3
4
5
6
7
8
9
"""
>>> str
' 1\n2\n3\n4\n5\n6\n7\n8\n9\n'

第三节:

条件分支

比较操作符

在这里插入图片描述

返回值为true/false

>>> 1 < 3
True
>>> 1 > 3
False
PYTHON 条件分支语法if-else
if 条件:
    条件为真(True)执行的操作
else :
    条件为假(False)执行的操作
实例1改进if-else
print('---------------我爱鱼C工作室----------')
temp = input("不妨猜一下我在想哪个数字:")
guess = int(temp)
if guess == 8:
    print("successfully!")
else:
    if guess > 8:
        print("大了!")
    else:
        print("小了!")
print("game over !")
while循环

当条件为真时,执行循环体,当循环体中定义修改条件操作时,当条件为假时跳出循环

while 条件:
    条件为真(True)时执行的操作
while 条件:
    循环体
实例1改进while循环
print('实例1改进while')
temp = input("不妨猜一下我在想哪个数字:")
guess = int(temp)
while guess != 8:
    temp = input("不对的,请重新输入:")
    guess = int(temp)
    if guess == 8:
        print("successfully!")
    else:
        if guess > 8:
            print("大了!")
        else:
            print("小了!")
print("game over !")
AND逻辑操作符

PYTHON中的and逻辑操作符可以将任意表达式连接在一起,并得到一个布尔类型的值

比较运算符优先级>逻辑运算符

>>> 3>2 and 1<2
True
>>> 3>2 and 1>2
False
外援模块:random模块

random模块中有一个函数

#####randint()函数 - 返回随机整数

import random
secret = random.randint(1,10) //产生1-10内随机数赋给secret变量
print('实例1改进random模块')
temp = input("不妨猜一下我在想哪个数字:")
guess = int(temp)
while guess != secret:
    temp = input("不对的,请重新输入:")
    guess = int(temp)
    if guess == secret:
        print("successfully!")
    else:
        if guess > secret:
            print("大了!")
        else:
            print("小了!")
print("game over !")

在这里插入图片描述

第四节:

PYTHON的数据类型

字符串

‘520’ VS 520

带’‘或者""或者’’’’’'都为字符串

####数值类型

整型

PYTHON3对长度无限制

浮点型

PYTHON区分整型与浮点型的区别就是有没有小数点

e记法

e相当于10

非常大的数或者非常小的数

>>> a = 0.000000000000000002
>>> a
2e-18
>>> 15000
15000
>>> 1.5e4
15000.0

布尔类型

布尔类型就是Ture或者False,在PYTHON中可以直接拿过来进行计算

True = 1

False = 0

>>> True + True
2
>>> True * False
0
>>> 
类型转换

借助一些PYTHON内置函数

int()

整数 - int( ) - 将浮点或者字符串转换成一个整数,在将浮点数转化为整数时会执行截断处理,将小数点后的数值直接去除

>>> a = '520'
>>> b = int(a)
>>> b
520
>>> a = 5.99
>>> c = int(a) //直接去除小数点后的.99 只保留 5
>>> c
5
float()

浮点数 - float( ) - 将整数或者字符串转化成一个浮点数

>>> a = '520'
>>> b = float(a)
>>> b
520.0
>>> a = 520
>>> c = float(a)
>>> c
520.0
>>> 
str()

字符串 - str( ) - 将整数或者浮点数转化成一个字符串

>>> a = 520
>>> b = str(a)
>>> b
'520'
>>> a = 5.99
>>> b = str(a)
>>> b
'5.99'
>>> c = str(5e19)
>>> c
'5e+19'
>>> 
注意:当函数名被当做变量使用时,不能再使用该函数原本的功能
>>> str = "BYF"
>>> str
'BYF'
>>> c = str(5e19)
Traceback (most recent call last):
  File "<pyshell#33>", line 1, in <module>
    c = str(5e19)
TypeError: 'str' object is not callable
type()
>>> a = '520'
>>> type(a)
<class 'str'>
>>> type(5.2)
<class 'float'>
>>> type(True)
<class 'bool'>
>>> type(5e15)
<class 'float'>
>>> 
isinstance()

isinstance(object,classinfo)

  • object – 实例对象
  • classinfo – 可以是直接或间接类名、基本类型或者由他们组成的元组

返回值:如果对象的类型与参数二的类型(classinfo)相同则返回True,否则返回False

>>> a = 'BYF'
>>> isinstance(a,str)
True
>>> isinstance(a,float)
False
>>> isinstance(a,int)
False
>>> isinstance(320,int)
True
>>> isinstance(320.25,bool)
False

第五节:

PYTHON算数操作符

加减乘除
+ - * / 
>>> a = 3
>>> a += 5 //3+5
>>> a
8
>>> b = 7
>>> b -= 3 //7-3
>>> b
4
>>> a = b = c = d = 10
>>> a += 1
>>> b -= 3
>>> c *= 10 //10*10
>>> d /= 8 //10/8
>>> a
11
>>> b
7
>>> c
100
>>> d
1.25
>>> 

% ** //

//-底板除
>>> 10 // 8
1
>>> 3.0 // 2
1.0
%-求余
>>> 5 % 2
1
>>> 10 % 2
0
**-幂运算
>>> 3 ** 2
9
>>> 5 ** 4
625
运算符优先级问题

先乘除后加减,括号内运算优先于其他

>>> -3 * 2 + 5 / -2 - 4
-12.5
>>> ((-3) * 2) + (5 / (-2)) - 4
-12.5
>>> 

**幂运算时,右侧优先级高于左侧优先级

>>> -3 ** 2
-9
>>> - (3 ** 2)
-9
>>> 3 ** -2
0.1111111111111111
>>> 3 ** (-2)
0.1111111111111111
>>> 

在这里插入图片描述

逻辑操作符
and
or
not

第六节:

分支和循环1

打飞机游戏框架
1.加载背景音乐
2.播放背景音乐(设置单曲循环)
我方飞机诞生
interval = 0
while Trueif 用户是否点击关闭按钮
   	退出程序
   interval += 1
   if interval == 50:
   	interval = 0
   	小飞机诞生
   小飞机移动一个位置
   屏幕刷新
   if 用户鼠标产生移动:
   	我方飞机中心位置 = 用户鼠标位置
   	屏幕刷新
   if 我方飞机与小飞机发生肢体冲突:
   	我方飞机挂
   	修改我方飞机图案
   	打印"Game over"
   	定制背景音乐,最好淡出

分支和循环2

评分系统
//自己完成
print('百分之输出')
score = input("请输入你的成绩:")

intscore = int(score)
if intscore >= 90:
    print("A")
else:
    if intscore >= 80:
        print("B")
    else:
        if intscore >= 60:
            print("C")
        else:
            print("D")
print("评分结束!")
elif函数-else if
print('评分系统')
score = int(input("请输入你的成绩:"))

if 100 >= score >= 90:
    print("A")
elif 90 > score >= 80:
    print("B")
elif 80 > score >= 60:
    print("C")
elif 60 > score >= 0:
    print("D")
else:
    print("输入错误")
print("评分结束!")
PYTHON 之 有效避免"悬挂else"

在C语言中的就近原则,会将之下代码中的else认为是就近的if条件判断

if(hi > 2)
	if(hi > 7)
    	printf("NICE!");
else
    printf("...");

PYTHON中的强制缩进,会让程序员来决定else处于哪个位置

*条件表达式(三元操作符)
x,y = 4,5
if x < y:
    small = x
else:
    small = y
small = x if x < y else y
断言(assert)-植入检查点
  • assert这个关键字我们可以称之为"断言",当这个关键字后边的条件为假时,程序自动崩溃并抛出AssertionError异常

  • 举个例子

    >>> assert 3 > 4
    Traceback (most recent call last):
      File "<pyshell#0>", line 1, in <module>
        assert 3 > 4
    AssertionError
    >>> assert 4 > 3
    >>> 
    
  • 一般来说,我们可以用它在程序中植入检查点,当需要确保程序中的某个条件一定为真才能让程序正常工作的话,assert关键字就非常有用了

for循环
  • 语法

    for 目标 in 表达式:

    ​ 循环体

>>> favourite = 'BYF'
>>> for i in favourite:
	print(i,end=' ')

	
B Y F 
>>> member = ['BYF','SHY','XT','ZBY']
>>> for each in member:
	print(each,len(each))

	
BYF 3
SHY 3
XT 2
ZBY 3
>>>
range()
  • 语法: range([start,] stop[,step=1])
    • 该BIF有三个参数,其中用括号括起来的两个表示这两个参数时可选的
    • step=1表示第三个参数的值默认值为1
    • range这个BIF的作用是生成一个从start参数的值开始到stop参数的值结束的数字序列
>>> range(0,5)
range(0, 5)
>>> list(range(0,5))
[0, 1, 2, 3, 4]
>>> for i in range(5):
	print(i)

	
0
1
2
3
4
>>> for i in range(2,9):
	print(i)

	
2
3
4
5
6
7
8
>>> for i in range(1,10,2):
	print(i)

	
1
3
5
7
9
>>> 
break
a = 'BYF'
b = input('请输入一句话:')

while True:
    if b == a:
        break
    b = input('错了,请重新输入:')

print('牛皮!')

>>> 
======================== RESTART: D:/PYTHON/实例/break.py ========================
请输入一句话:123
错了,请重新输入:123
错了,请重新输入:456
错了,请重新输入:BYF
牛皮!
>>> 
continue

终止本轮循环并开始下一轮循环,在开始下一轮循环时,当条件为True时才会开始

for i in range(10):
    if i%2 != 0:
        print(i)
        continue
    i += 2
    print(i)
======================= RESTART: D:/PYTHON/实例/continue.py ======================
2
1
4
3
6
5
8
7
10
9
>>>  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值