Python简要介绍
下载地址Welcome to Python.org
特点 ①可读性②简洁性③面向对象④免费开源⑤可移植,扩平台
Tip:在执行性能性需求高的程序时应避免使用python(python用作执行解释)
执行依赖于解释器
CPython(C语言)JPython(Java)IronPython(.Net)PyPy(Python)
目录
Python简要介绍?
初识
1、Python使用(交互式窗口 Shen模式)
2.开发环境IDE
?快捷键
3.程序格式
图形化程序设计
Python程序构成
?对象
引用
?标识符
?删除变量
数
赋值
运算符
常规运算符
复合赋值运算符
比较运算符(a=1,b=2)
逻辑运算符
同一运算符
整数(进制转换)?
时间
字符串
字符串常用函数汇总
字符串创建
空字符串
转义字符
字符串拼接,复制
?不换行打印?
控制台读取字符串
提取字符
替换字符
初识
1、Python使用(交互式窗口 Shen模式)
1.运行输入cmd打开控制台,输入python以使用
2>>>为"提示符"
3.输入quit()/手动ctrl+z以结束
4.执行时中断ctrl+c
2.开发环境IDE
主流开发环境:①IDLE②Pycharm③vscode④Eclipse
? ? ? ? ? ? ? ? ? ? ?项目创建? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?项目运行
?快捷键
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
?
Tips:
①项目开头不要用空格" ",空格表示缩进含义。
②项目内符号都用英文。
3.程序格式
print("u are a pig")
#这是单行注释
'''
这是多行注释
'''
补充:一个缩进=四个空格。tab键=四个空格。
print("u are\
a pig")
#\是行链接符
图形化程序设计
import turtle#导入turtle模块
turtle.showturtle()#显示箭头
turtle.write("pig")#写字符串
turtle.forward(300)#前进300像素,以x轴正方向
turtle.color("blue")#改变颜色
turtle.left(90)#箭头转向90°
turtle.goto(0.50)#前往坐标
turtle.penup()#不显示轨迹
turtle.pendown()#显示轨迹
turtle.circle(50)#画圆,以x轴负方向找圆心,括号内半径
补充:turtle.width(50)#线条宽度50
代码示例:海龟图
import turtle
t = turtle.Pen()
for x in range(360):
t.forward(x)
t.left(59)
实践作业1:五环设计(简单粗暴法)
import turtle
turtle.color("blue")
turtle.circle(50)#第一个
turtle.left(270)
turtle.penup()
turtle.forward(25)
turtle.pendown()
turtle.color("yellow")
turtle.circle(50)#第二个
turtle.left(90)
turtle.penup()
turtle.forward(100)
turtle.left(90)
turtle.forward(25)
turtle.left(270)
turtle.pendown()
turtle.color("black")
turtle.circle(50)#第三个
turtle.left(270)
turtle.penup()
turtle.forward(25)
turtle.pendown()
turtle.color("green")
turtle.circle(50)#第四个
turtle.left(90)
turtle.penup()
turtle.forward(100)
turtle.left(90)
turtle.forward(25)
turtle.left(270)
turtle.pendown()
turtle.color("red")
turtle.circle(50)#第五个
Python程序构成
①Python程序由模块组成,一个模块对应Python源文件,一般后缀名为.py
②模块由语句组成。运行Python程序时,按照模块中语句顺序依次进行。
③语句是Python程序的构造单元,用于创建对象,变量赋值,调用函数,控制语句等。
?对象
?例:a=3,而3的id为114514,则赋值后a的id为1141514
引用
TIps:不同于c语言,不需要int a=3,直接写a=3
(因为3已是type“int”型)
?
?标识符
①区分大小写
②第一个字符是字母、下划线、数字
③不能用关键字
④避免用双下划线开头/结尾
?删除变量
使用del删除不需要的变量以节省空间
?(您完全不占空间是吗?)
数
赋值
①链系赋值? ?x=y=1
②系列解包赋值? >>>a,b,c=1,2,3即a=1,b=2,c=3
Tip:Python不支持常量
运算符
常规运算符
运算符 | 说明 | 示例 | 结果 | + | 加法 | 1+1 | 2 | - | 减法 | 1-1 | 0 | * | 乘法 | 2*3 | 6 | / | (浮点数)除 | 6/3 | 2.0 | // | 整数除法 | 7//2 | 3 | % | 模(取余数) | 7%4 | 3 | ** | 幂 | 2**3 | 8 |
复合赋值运算符
+= | a+=2 | a=a+2 | -= | a-=2 | a=a-2 | *= | a*=2 | a=a*2 | /= | a/=2 | a=a/2 | //= | a//=2 | a=a//2 | **= | a**=2 | a=a**2 | %= | a%=2 | a=a%2 |
比较运算符(a=1,b=2)
== | 等于 | (a==b)返回0 | != | 不等于 | (a!=b)返回1 | > | 大于 | (a>b)返回0 | < | 小于 | (a<b)返回1 | >= | 大于等于 | (a>=b)返回0 | <= | 小于等于 | (a<=b)返回1 |
逻辑运算符
or? 或 | X or Y | and 与 | X and Y | not 非 | not X |
? ? ? ? ? ? ? ? ? ? ? 补充:异或XOR
同一运算符
is | 判断两个标识符是否引用同一个对象(地址是否相同) | is not? | 判断两个标识符是否引用不同对象 |
Tip:①函数? divmod()
? ? ? ? ? ? ? ? ?同时得到商和余数
>>>dicmod(13,3)
(4,1)
? ? ?②函数 round()
? ? ? ? ? ? ? 四舍五入
>>>round(3.14)
3
整数(进制转换)
①? 0b or 0B 二进制
② 0o?or? 0O 八进制
③ 0x or 0X 十六进制
(直接在后边写数字,不要加空格,例0x1a)
时间
time.time()? ?显示时间(以1970.1.1开始)单位为秒,以微秒为精度(1秒=1000000微秒)
?
?实践作业2
求轨迹始末点距离
import turtle
import math
x1,y1=100,100
x2,y2=100,-100
x3,y3=-100,-100
x4,y4=-100,100
turtle.penup()
turtle.goto(x1,y1)
turtle.pendown()
turtle.goto(x2,y2)
turtle.goto(x3,y3)
turtle.goto(x4,y4)
distance=math.sqrt((x1-x4)**2+(y1-y4)**2)
turtle.write(distance)
字符串
字符串:字符序列(Python中字符串不可变,修改是创建新的字符串,不支持单字符类型,单字符作为字符串)
Python3支持Unicode,字符默认16位(2**16个)Unicode编码(ASCII是其子集)
字符串常用函数汇总
????????①?ord() 将字符转换为对应 Unicode码
? ? ? ? ② ?char() 十进制数转为对应字符?? ??
? ? ? ? ③?len() 查阅字符串长度
? ? ? ? ④?str() 将其他类型变为字符串? ?(在用print时默认转换)
字符串创建
可以用? " " or? ' '??
在字符串中出现 ' 时用 " " 括起来?
多行字符串连续用三个""" or '''括起来
#单行字符串
question = ' " are u a pig? " '
question
"are u a pig? "
#多行字符串
question = ''' " are u
a pig?" '''
question
"are u a pig?"
空字符串
不包含任何字符,长度为0
a = ''
len(a)
0
b = 'abc'
len(b)
3
转义字符
\(在行属时) | 续行符 | \\ | 反斜杠符号 | \' | 单引号 | \" | 双引号 | \b | 退格 | \n | 换行 | \t | 横向制表符 | \r | 回车 |
字符串拼接,复制
用加法or空格,左右类型要相同('u are' ' a pig'==>' u are a pig')
复制用乘法
?
?不换行打印
用 ,end="任意内容"
?
控制台读取字符串
提取字符
用?[ ]
从左到右为?0.1.2.3........字符长度-1
从右到左为 -1,-2,-3.....-字符长度
?
替换字符
用 .replace()? ? 此处替换是把所有的都换掉
替换是创建新的字符串
?(未完待续)
?
|