python 回声程序_Python语言程序设计基础—— 2 Python程序示例解析

Python语言程序设计基础

第二章 Python程序示例解析

部分截图来自 北京理工大学 嵩天 的python基础设计课程的ppt,仅做个人笔记使用,特此声明。

编程解决问题的步骤

分析问题:分析问题的计算部分,想清楚

划分边界:划分问题的功能边界,规划IPO

设计算法:设计问题的求解算法,关注算法

编写程序:编写问题的计算程序,编程序

调试测试:调试程序使正确运行,运行调试

升级维护:适应问题的升级维护,更新完善

代码示例1——温度转换

温度转换

需求

两种温度体系的转换

摄氏度转为华氏度

华氏度转为摄氏度

问题分析

划分边界

输入:带华氏或摄氏标志的温度值

输出:根据温度标志选择适当的温度转换算法

输入输出格式设置

标识放在温度后面,F标识华氏度,C表示摄氏度

设计算法

\(C=(F-32)/1.8\)

\(F=C*1.8+32\)

代码

#实例代码1.1 温度转换

TempStr = input("请输入带有符号的温度值")

if TempStr[-1] in ['F','f']:

C=(eval(TempStr[0:-1])-32)/1.8

print("转换后的温度是{:.2f}C".format(C))

elif TempStr[-1] in ['C','c']:

F = 1.8*eval(TempStr[0:-1])+32

print("转换后的温度是{:.2f}F".format(F))

举一反三

温度数值与温度标识之间关系的设计可以改变

标识放在温度数值之前

TempStr = input("请输入带有符号的温度值")

if TempStr[0] in ['F','f']:

C=(eval(TempStr[1:])-32)/1.8

print("转换后的温度是{:.2f}C".format(C))

elif TempStr[0] in ['C','c']:

F = 1.8*eval(TempStr[1:])+32

print("转换后的温度是{:.2f}F".format(F))

货币转换、长度转换、重量转换、面积转换......

强缩进

python 与C++,java在代码块的划分是不一样的,C++,java使用{}来区分代码块。而python使用缩进来区分代码块,增强了代码的可读性

注释

单行注释:单行注释以#开头

多行注释:多行注释以‘’’(3个单引号)开头和结尾

命名与保留字

变量命名:

python语言允许采用大写字母,小写字母、数字、下划线_ 和汉字等字符及其组合对变量进行命名。

但名字的首字母不能是数字,中间不能出现空格。

标识符对大小写敏感

变量名不能与python的保留字相同

保留字

def

import

from

as

False

True

None

if

elif

else

async

for

while

break

continue

try

except

finally

return

and

not

or

is

assert

with

raise

in

del

global

nonlocal

yiled

pass

class

lambda

await

字符串

创建,python中使用引号‘’创建字符串,不支持单字符类型,单字符在python中也是作为一个字符串来使用

访问字符,python使用方括号[]来访问字符串

正向递增序号,最左侧字符为0,向右递增,最右侧字符序号为L-1

反向递减序号,最右侧字符序号为-1,想做依次递减,最左侧字符序号为-L

区间访问(切片),采用[N:M]格式,表示字符串从N到M(不包含M)的子字符串,其中,N和M为字符串的索引序号,可以混合使用正序和逆序序号

字符串连接 +

判断字符串是否包含给定字符 in not in

格式化输出 类似于C语言中的sprintf函数 %f 格式化浮点数字,可指定小数后的精度

列表 [ ]

列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。列表的数据项不需要具有相同的类型。创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。

分支

使用保留字 if elif else

每个保留字所在行最后存在一个冒号(😃,语法的一部分。冒号及后续缩进用来表示后续语句与条件的所属关系

输入输出 input print

input():从控制台获得用户输入的函数

print():以字符形式向控制台输出结果的函数

8b9a7c1aa1ad59aa1f5f52e31c8c731c.png

eval()

eval() 能够以Python表达式的方式解析并执行字符串,并将结果输出。eval()函数将去掉字符串的两个引号,将其解释为一个变量。

作用:

处理数字

单引号、双引号,eval()函数都能将其解释为int类型;三引号解析为str类型。

处理字符串类型的字符串

对于eval()括号中的字符串(非数字),如果字符串带的是双引号或单引号都会引起NameError,这是因为eval()函数在处理字符串时会去掉两个引号。正确应该使用一个单引号包含一个双引号组成的三引号来包含字符串。

input 和 eval 结合使用

获得用户输入的数字

value = eval ( input ( "请输入数字:") )

获得用户输入的字符串

Str = eval ( ' input ("请输入字符串") ')

思考与练习

2.6 回声程序

问题描述:

请用一行代码·编写一个回声程序,将用户输入的内容直接打印出来

问题分析:

获取用户输入:input函数;输出:print函数

代码:

print(input())

2.7 试想一下,为什么Python的命名不能以数字开头

这是为了区分变量和常量。在变量命名可以以数字开头的情况下,无法区分以下内容是定义的变量还是常量:01,2E10。这会在编译的时候造成二义性。所以规定在命名变量的时候不能以数字开头。

其实,编译器或者解释器都会有一个词法分析器。词法分析器在判断一个单词是否以数字开头,如果是以数字开头则把他当作数字常量处理,否则当作普通单词处理。这样子可以提高词法分析器的效率

代码示例2——Python蟒蛇绘制

#示例代码2.1

import turtle

turtle.setup(650,350,200,200)

turtle.penup() #笔抬起

turtle.fd(-250)

turtle.pendown() #笔落下

turtle.pensize(25) #笔的宽度

turtle.pencolor("purple") #笔的颜色

turtle.seth(-40) #前进方向

for i in range(4):

turtle.circle(40,80)

turtle.circle(-40,80)

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值