嵩天老师python基础课程笔记-1

第一周 Python基本语法元素

1.1 程序设计的基本方法

1.2 Python开发环境配置

1.3 实例:温度转换

1.4 Python程序语法元素分析

1.1 程序设计的基本方法

计算机时根据指令来操作数据的设备,具有功能性和可编程性;
摩尔定律:单位面积集成电路上可容纳晶体管的数量约每两年翻一番
功能性:对数据的操作,表现为数据计算、输入输出处理和结果储存等
可编程性:根据一系列指令自动地、可预测地、准确地完成操作者的意图
源代码:采用某种编程语言编写的计算机程序,人类可读
目标代码:计算机可以直接执行,人类不可读
compilation and interpretation
compilation:源代码->编译器->目标代码->(程序输入)->程序执行->结果输出
interpretation:将源代码逐条转换为目标代码的过程:源代码&程序输入->解释器->结果输出

静态语言:编译执行,C/C++,Java等,程序更快
脚本语言:解释执行,python,JavaScript,PHP等,维护方便

序基本编写方法:
IPO:
I:input,需要处理的数据
P:process,通过算法处理,算法是一个程序的灵魂
O:output,展示运算结果的方式

需要理解什么是问题的计算部分:
1.确定IPO
2.编写程序
3.调试程序

计算机编程那些事儿
抽象化交互关系,计算思维
数学:逻辑思维;物理:实验思维
提升自己的能力,创造世界

1.2 Python开发环境配置

Python由PSF拥有,开放、开源

开发环境配置略

python的两种编写运行方式:

  • 交互式:输入即时运行结果,语法练习;
  • 文件式:执行一组语句并运行结果,主要的编程方式;
例1.圆面积的计算
r = 25
aera = 3.1415*r*r
print(aera)
1963.4375000000002
print('{:.2f}'.format(aera))
1963.44
例2.绘制同切圆
import turtle
turtle.pensize(10)
turtle.circle(2)
turtle.circle(10)
turtle.circle(40)
turtle.circle(80)
turtle.circle(160)
例3.五角星绘制
from turtle import*
color('red','red')
begin_fill()
for i in range(5):
    fd(200)
    rt(144)
end_fill()
done()

1.3 实例:温度转换

摄氏度和华氏度相互转换
理解1:直接将温度进行转换
理解2:将温度发布声音和图像进行理解和转换
理解3:爬取网上温度进行转换

采取理解1进行在计算,边界如下:
输入:带华氏或者摄氏温度标志的温度值
处理:根据温标选取适当的转换算法
输出:待摄氏或者华氏温标的温度值

格式设计:标识放在数字之后,F表示华氏,C表示摄氏

算法设计:
利用公式:
C = ( F − 32 ) / 1.8 C=(F-32)/1.8 C=(F32)/1.8 F = C ∗ 1.8 + 32 F=C*1.8+32 F=C1.8+32
进行换算,其中,C为摄氏,F为华氏

#TempConvert
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))
else:
    print('输入格式错误')
转换后的温度是46.40F

1.4 python程序语法元素分析

  • 格式与框架
  • 命名与保留字
  • 数据类型
  • 语句与函数
  • python程序的输入输出

目标:理解10行左右的python小程序

  • 1.程序格式框架:
    缩进:代码前的空白区域,表示程序的格式框架 python中是语法的一部分,表达代码间包含和层次关系的唯一手段,单一程序内,缩进的长度相同
    注释:勇于提高代码可读性的辅助性文字,不被程序所执行,用来标注程序功能,提高代码可读性,单行以#开头,多行以’’'开始和结束

  • 2.命名与保留字
    变量:程序中用于保存和表示数据的占位符号,采用标识符(名字)表示,关联标识符的过程叫做命名,可以使用赋值符号(=)向变量赋值或者修改值
    命名规则:大小写字母、数字、下划线和汉字及组合,命名大小写敏感,首字符不能是数字,保留字不能用(33个保留字)

  • 3.数据类型
    程序语言要求无歧义,需要定义数据的形式,因此程序设计语言通过一定的方式向计算机表达数据的形式
    字符串中序号从0开始
    正向递增序号,反向递减字符
    因为字符串有序号,可以进行索引和切片
    索引:返回字符串的单个字符,使用方式:<字符串> [M]
    切片:返回字符串中一段字符,使用方式:<字符串>[M:N]
    整数类型,浮点数类型,列表类型([]表示。中间用逗号分隔)

  • 4.语句与函数
    赋值语句:由赋值符号构成的一行代码
    分支语句:由判断条件决定程序运行方向的语句,分支语句最后一定要有冒号(:)
    函数:根据输入产生不同输出的功能过程

  • 5.python程序的输入输出
    input()函数:<变量> = input(<提示信息字符串>)
    ptint()函数:print(<拟输出的字符串>)
    print()函数的格式化:可以用{}表示槽,后续变量可以填充到槽中
    eval():去掉参数最外侧引号并执行余下语句的函数(评估函数)

Hello World的条件输出

描述

获得用户输入的一个整数,参考该整数值,打印输出"Hello World",要求:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬
‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬如果输入值是0,直接输出"Hello World"

如果输入值大于0,以两个字符一行方式输出"Hello World"(空格也是字符)‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬

如果输入值小于0,以垂直方式输出"Hello World"

#HelloWorldCondition
s = "Hello World"
num = input()
if eval(num) == 0:
    print(s)
elif eval(num) > 0:
    st=""
    for i in range(len(s)):
        if(i+1)%2 != 0:
            st = st+s[i]
            if len(s) == (i+1):
                print (st)
        else:
            st = st+s[i]
            print(st)
            st = ""
else:
    for i in s:
        print(i)
He
ll
o 
Wo
rl
d
数值运算

描述

获得用户输入的一个字符串,格式如下:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬

M OP N‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬

其中,M和N是任何数字,OP代表一种操作,表示为如下四种:+, -, *, /(加减乘除)‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬

根据OP,输出M OP N的运算结果,统一保存小数点后2位。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬

注意:M和OP、OP和N之间可以存在多个空格,不考虑输入错误情况。

#Calculater(个位数加减法)
cal = input()
if ('+') in cal[1:-1]:
    print(eval(cal[0])+eval(cal[-1]))
elif ('-') in cal[1:-1]:
    print(eval(cal[0])-eval(cal[-1]))
elif ('*') in cal[1:-1]:
    print(eval(cal[0])*eval(cal[-1]))
elif ('/') in cal[1:-1]:
    print(eval(cal[0])/eval(cal[-1]))
42
string = input()    #输入一个字符串
op_num = 0  #定义操作字符值为0
op = ['+','-','*','/']  #定义操作字符
for i,s in enumerate(string):   
    if s in op and i!=0:
        op_num = i
        if string[0] =='-':
            num1 = -float((string[1:i]).strip())
        elif string[0:2]== '0x':
            num1 = int(eval((string[:i]).strip()))
        else:
            num1 = float((string[0:i]).strip())
        num2 = float((string[i+1:]).strip())

        if s == op[0]:
            print('{:.2f}'.format(num1 + num2))
        elif s == op[1]:
            print('{:.2f}'.format(num1 - num2))
        elif s == op[2]:
            print('{:.2f}'.format(num1 * num2))
        else:
            print('{:.2f}'.format(num1 / num2))
42.00


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值