第二章 python基本语法元素
python有两种编程方式,交互式和文件式。
交互式:对每个输入语句即时运行结果------适合语法练习
文件式:批量执行一组语句并运行结果------编程的主要方式
实例1:圆面积的计算(根据半径r计算圆面积)
上图明显是交互式运行的结果,如果想编辑文件式运行,则先编辑一个calcircle.py文件,将上述代码写进去。
然后输入代码 python calcircle.py,命令界面即可输出代码结果。
下面我们试试绘制多个同心圆的代码:
1 import turtle
2 turtle.pensize(2)
3 turtle.circle(10)
4 turtle.circle(40)
5 turtle.circle(80)
6 turtle.circle(160)
7 turtle.done()
运行结果,如下图所示
下面我们稍微分析一下这段代码
import turtle#导入海龟库
turtle.pensize(2)#设置画笔的大小
turtle.circle(10)#画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆
turtle.circle(40)
turtle.circle(80)
turtle.circle(160)
turtle.done()#必须是乌龟图形程序中的最后一个语句
关于turtle库的使用,之后还会提及,turtle库是python的自带库,绘制图像相对来说比较方便,容易理解
当然上述的代码也可以这样写
1 from turtle import *
2 pensize(2)
3 circle(10)
4 circle(40)
5 circle(80)
6 circle(160)
7 done()
大家很容易发现他们的不同,就是第一句的区别,关于import的用法也将在后续章节详细讲述。
下面我们来画一个难一点的图形
from turtle import *
color('red','black')#前一个颜色是线条色,后一个是填充色
begin_fill()#从这里开始填充
for i in range(5):#画五笔就可以结束
fd(200)
rt(144)#向右旋转144度
end_fill()#结束填充
done()
下面我们从一个简单的小程序来分析python的语法体系
我们大家都知道,华氏温度和摄氏温度之间的转换,我们可以用python编程实现
TempStr = input("请输入带有符号的温度值: ")#input显示的内容出现在屏幕上,且返回一个str类型的字符串
if TempStr[-1] in ['F', 'f']:#如果最后一个字符是F
C = (eval(TempStr[0:-1]) - 32)/1.8#eval将字符串转换成数字
print("转换后的温度是{:.2f}C".format(C))#格式化输出
elif TempStr[-1] in ['C', 'c']:
F = 1.8*eval(TempStr[0:-1]) + 32
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错误")
缩进:缩进表达程序的格式框架
1、严格明确:缩进是语法的一部分,缩进不正确程序运行错误
2、所属关系:表达代码间包含层次关系的唯一手段
3、长度一致:使用TAB键即可
python编程语言有一个重要的特点就是取消了{ }而用缩进的方式进行代码块的分割,初学者可能不习惯,多写几次就习惯了这种写法。
注释:不被程序执行的辅助性说明信息
单行注释:
#这是单行注释
多行注释:
1 ''' 这是多行注释
2
3 23333333333333 '''
变量:程序中用于保存和表示数据的占位符号
变量采用标识符(名字)来表示,关联标识符的过程叫命名
TempStr是变量名字
可以使用等号(=)向变量赋值或修改值,=被称为赋值符
TempStr="82F" #向变量TempStr赋值"82F"
命名规则:大小写字母、数字、下划线和汉字等字符
如:TempStr、Python_Great
注意事项:大小写敏感、首字符不能是数字、不与保留字相同
python与Python是不同的变量,123Python是不合法变量
保留字
被编程语言内部定义并保留使用的标识符
python语言有33个保留字(也叫关键字)
if,elif,else,in
保留字是编程语言的基本单词,大小写敏感
if是保留字,If是变量
保留字
数据类型
字符串、整数、浮点数、列表
10011101该如何解释呢?
这是一个二进制数字或十进制数字
作为二进制数字,10011101的值是十进制157
这是一段文本或者用逗号分隔3个数字
作为一段文本,逗号是文本中的一部分,一共包含10个字符
整数类型10011101
字符串类型:"10,011,101"
列表类型:[10,011,101]
字符串:由0个或多个字符组成的有序字符序列
由一对双引号或一对单引号表示
"helloworld"或'GOOD'
字符串是字符的有序序列,可以对其中字符进行索引
如"你"是"你好啊"这个字符串的第0个字符
python的字符串序号,正向递增,反向递减
字符串的使用
使用[ ]获取字符串中一个或多个字符
1 TempStr = input("请输入带有符号的温度值: ")
2 if TempStr[-1] in ['F', 'f']:#TempStr[-1]指的是最后一个字符
3 C = (eval(TempStr[0:-1]) - 32)/1.8#TempStr[0:-1]指的是字符串从第一个到最后一个之前的所有字符串
4 print("转换后的温度是{:.2f}C".format(C))
5 elif TempStr[-1] in ['C', 'c']:
6 F = 1.8*eval(TempStr[0:-1]) + 32
7 print("转换后的温度是{:.2f}F".format(F))
8 else:
9 print("输入格式错误")
数字类型:整数和浮点数
整数:数学中的整数
32或-89
浮点数:数学中的实数,带有小数部分
1.8或者-1.8或者-1.0
列表类型:由0个或多个数据组成的有序序列
列表使用[ ]表示,采用逗号分隔各元素
[ 'F' , 'f' ]表示列表里含义两个元素'F'和'f'
使用保留字in判断一个元素是否在列表中
TempStr[-1] in ['C' , 'c']判断前者是否与列表中的某个元素相同
赋值语句:由赋值符号构成的一行代码
赋值符号笔者之前提过,就是我们俗称的等于号,但等于号在编程语言中通常表示赋值,不表示等于号的含义。
1、赋值语句用来给变量赋予新的数据值
C = (eval(TempStr[0:-1]) - 32)/1.8 #右侧运算结果值赋值给C
2、赋值语句右侧的数据类型同时作用于变量
TempStr = input("请输入带有符号的温度值: ") #input返回一个字符串,所以TempStr也是字符串
分支语句:由判断条件决定程序运行方向的语句
1、使用保留字 if elif else构成条件判断的分支结构
1 if TempStr[-1] in ['F', 'f']:
如果条件为True则执行冒号后的语句
2、每个保留字所在行最后存在一个冒号:,是语法的一部分
冒号及后续缩进用来表示后续语句与条件的所属关系
函数:根据输入参数产生不同输出的功能过程
类似于数学中的函数,y=f(x)
print("输入格式错误") #打印出 输入格式错误
函数采用<函数名>(<参数>)的方式使用
1 eval(TempStr[0:-1]) #TempStr[0:-1]是参数
python的输入输出
input():从控制台获得用户输入的函数
input()函数的使用格式:
1 <变量>=input (<提示信息字符串>)
用户输入的信息以字符串类型保存在<变量>中
1 TempStr=input("请输入") #TempStr保存用户输入的信息
输出函数print()
以字符形式向控制台输出结果的函数
print()函数的基本使用格式
1 print(<拟输出字符串或字符串变量>)
字符串类型的一对引号仅在程序内部使用,输出无引用
1 print("输入格式错误") #向控制台输出 输入格式错误
print函数的格式化:
1 print("转换后的温度是{:.2f}C".format(C))
{ }表示槽,后续变量填充到槽中
{:.2f}表示将变量C填充到这个位置时取小数点后2位
如果C的值是123.456789,则输出结果为123.45C
评估函数eval():去掉参数最外侧引号并执行余下语句的函数
eval的基本使用格式
1 eval(<字符串或字符串变量>)
>>>eval("1") 1
第二章 python基本语法元素的更多相关文章
- 第一章 Python基本语法元素
1.1 程序设计基本方法 计算机的概念: (1)功能性:对数据的操作,表现为数据计算.输出输出处理和结果存储等 (2)可编程性:根据一系列指令自动地.可预测地.准确地完成操作者的意图. 计算机的发 ...
- 第二章 Python基础语法
2.1 环境的安装 解释器:py2 / py3 (环境变量) 开发工具:pycharm 2.2 编码 编码基础 ascii ,英文.符号,8位为一个东西,2**8 unicode ,万国码,可以表示所 ...
- 第二章Python入门
第二章 Python入门 2.1.简介 Python是著名的"龟叔"(Guido van Rossum)在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言 Pytho ...
- java面向对象编程——第二章 java基础语法
第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...
- [Python笔记][第二章Python序列-复杂的数据结构]
2016/1/27学习内容 第二章 Python序列-复杂的数据结构 堆 import heapq #添加元素进堆 heapq.heappush(heap,n) #小根堆堆顶 heapq.heappo ...
- [Python笔记][第二章Python序列-tuple,dict,set]
2016/1/27学习内容 第二章 Python序列-tuple tuple创建的tips a_tuple=('a',),要这样创建,而不是a_tuple=('a'),后者是一个创建了一个字符 tup ...
- [python笔记][第二章Python序列-list]
2016/1/27学习内容 第二章 Python序列-list list常用操作 list.append(x) list.extend(L) list.insert(index,x) list.rem ...
- 第二章 JavaScript核心语法
第二章 avaScript核心语法 一.变量的声明和赋值 JavaScript是一种弱类型语言,没有明确的数据类型,也就是在声明变量时不需要指定数据类型,变量的类型由赋给变量的值决定. 在Java ...
- 003 Python基本语法元素
目录 一.概要 1.1 方法论 1.2 实践能力 一.概要 程序设计基本方法:https://www.cnblogs.com/nickchen121/p/11164043.html Python开发环 ...
随机推荐
- GLSL着色器,来玩
对实现动画的前端同学们来说,canvas可以说是最自由,最能全面控制的一个动画实现载体.不但能通过javascript控制点.线.面的绘制,使用图片资源填充:还能改变输入参数作出交互动画,完全控制动画 ...
- 动态更换animator的animatorcontroller
你可以这样 Animator animator = this.gameObject.GetComponent<Animator>(); animator.runtimeAnimatorCo ...
- Your branch and 'origin/master' have diverged, and have 1 and 1 different commits each, respectively
On branch master Your branch and 'origin/master' have diverged, and have 1 and 1 different commits e ...
- paramiko 详解
Paramiko是用python语言写的一个模块,远程连接到Linux服务器,查看上面的日志状态,批量配置远程服务器,文件上传,文件下载等 初始化一些参数: host = "120.24.2 ...
- K8S集群etcd备份与恢复
参考链接: K8S集群多master:Etcd v3备份与恢复 K8S集群单master:Kubernetes Etcd 数据备份与恢复 ETCD系列之一:简介:https://developer.a ...
- Go语言的函数05---匿名函数
package main import ( "fmt" "time" ) //延时执行一个匿名函数 func main071() { fmt.Println(& ...
- 关于MongoDB ObjectId的那些事儿
ObjectId 是什么? 一句话,ObjectId 是 MongoDB 文档 _id(主键)的默认类型. ObjectId 的组成? ObjectId 使用 12 字节的存储空间,是一个由 24 个 ...
- Tensor基础实践
Tensor基础实践 飞桨(PaddlePaddle,以下简称Paddle)和其他深度学习框架一样,使用Tensor来表示数据,在神经网络中传递的数据均为Tensor. Tensor可以将其理解为多维 ...
- CloudHub概述
CloudHub概述 CloudHub CloudHub是cloudcore的一个模块,是Controller和Edge端之间的中转.它同时支持基于websocket的连接以及QUIC协议访问.Edg ...
- ffmpeg architecture(中)
ffmpeg architecture(中) 艰苦学习FFmpeg libav 您是否不奇怪有时会发出声音和视觉? 由于FFmpeg作为命令行工具非常有用,可以对媒体文件执行基本任务,因此如何在程序中 ...