大一下暑假,python的学习启蒙于《Python程序设计入门到实践》,和编者的想法不谋而合,“在全面学习Python语法细节之前,寻找应用实践动机。”又因偶然间找到《你也能看得懂的Python算法书》,决定7月底完成python和算法的基础学习。

1. 输入数字number,求阶乘

number=int(input("Enter one number:"))
sum=1
while number>0:sum=sum*numbernumber=number-1
print(sum)
number=int(input("Enter one number:"))
sum=1
for i in range(1,number+1):sum=sum*i
print(sum)

sum=1,在python语言中任何类型的变量都不需要事先声明,此处sum自动被指定为整数(int)型,若sum=1.0 sum="string"则被指定为浮点型 字符串型

含for if whie判断指令,最后以":"结尾;判断语句所执行的操作需要缩排一层(可以2格空格或4格空格,也可以是一个tab制表符号,但整个程序中前后要统一)

for循环的语法格式for变量in变量范围,range是python的内置函数,range(x)表示变量范围(0,x-1)range(x,y,z)表示变量范围x+z到y-z,input和print也是内置函数


list=[]
number=int(input("Enter the count of date"))
for i in range (number):list.append(int(input("Enter a number:")))
print(list)
sum=1
#体会两种不同的for循环格式
for i in range(number):sum=sum*list[i]
print(sum)
'''
for i in list:sum=sum*i#i相当于list[i]
print(sum)
'''

关键字或保留字不能被拿来作为变量名称,为避免命名冲突建议使用中多运用下划线来搭配有意义的单词来命名:点这儿,查看所有的关键字

2、输入数学、英语、历史成绩,单科和总成绩按梯度评价

def JudgeSubjects(score1,score2,score3):if score1>=75:if score1>=85:degree1='Great'#两个单引号或双引号之间的一串字符就是字符串,若使用单引号其字符串内不能包含撇号else:degree1='Good'else:degree1='Bad'if score2>=80:if score2>=90:degree2='Great'else:degree2='Good'else:degree2='Bad'if score3>=70:if score3>=78:degree3='Great'else:degree3='Good'else:degree3='Bad'return{'Maths':degree1,'English':degree2,'History':degree3}#字典,"#"后加解释性语言,仅占一行;若是段落性注释,可前后使用”'''“或”"""“
def JudgeSum(sum):if sum>=270:degree='A+'elif sum>=240:degree='A'elif sum>=210:degree='B+'elif sum>=190:degree='B'else:degree='C'return degree
def CalculateSum(score1,score2,score3):sum=score1*1.1+score2*1.1+score3*0.8return sum
def InputScore():score1=int(input("the score of math:"))if score1<0 or score1>100:print("The data is wrong.")score1=int(input("the score of math:"))score2=int(input("the score of Enlish:"))if score2<0 or score2>100:print("The data is wrong.")score2=int(input("the score of Enlish:"))score3=int(input("the score of History:"))if score3<0 or score3>100:print("The data is wrong.")score3=int(input("the score of History:"))return score1,score2,score3#可同时返回多个值
def OutputResult(sum,degree,SL):#此处SL表示字典名字print('Total score:',sum)print('Total level:',degree)print('Mathlevel:',SL['Maths'],'Englishlevel:',SL['English'],'Historylevel:',SL['History'])#SL下标表示是关键字
if __name__=="__main__":score1,score2,score3=InputScore()sum=CalculateSum(score1,score2,score3)degree=JudgeSum(sum)SL=JudgeSubjects(score1,score2,score3)OutputResult(sum,degree,SL)#总分,总评价,单科评价

由于程序是自上到下运行的,所以函数必须在调用语句的上面定义,定义函数时要注意代码块前的缩进,(本质上是if语句格式)主函数要放在自定义函数后面。

mac和linux系统中可以不写if __name__=="__main__":但window系统会报错,if和后面的__下划线(是两个合并)之间有一个空格,在不必要的时候可以省去主函数

Python语言和其他语言不同,可以同时返回多个值,而且可以是不同类型的,需用多个变量在=左边接着。返回多个值时变量之间用“,”隔开,且继承它们对应位置上的值。

字典是Python语言中5种标准变量类型之一,其余分别是数字、字符串、列表、元组,对于列表内置函数len 、del、clear、copy字典也能使用,除此之外,字典是根据输入的关键字来寻找对应的值并返回,由键值对组成。

letters={1:"abc",4:"s",3:"t"}
letters[2]="e"#给字典加入新的元素(键值对),默认加在所有元素后面
letters["adc"]=6
print(letters)

输出结果:
{1:'abc',4:'s',3:'t',2:'e','adc':6}

3、输出1-11不被5整除的数

n=0
while True:if n%5==0:n+=1continueelif n==12:break
print(n)
n+=1

elif相当于c++中的else if,continue结束本次循环,即0,5,10不参与循环,break结束本层循环终止while

4、已知苹果、菠萝、西瓜和各自所装篮子的单价,给出所买三种水果的数量,求总花费

def apple(num1):if num1%5==0:hsum=num1//5#num1//5是指整数部分,python中不存在四舍五入,取整指的是丢掉原来小数部分else:hsum=num1//5+1sum1=2*num1+hsumreturn sum1
def pineapple(num2):sum2=8*num2return sum2+num2
def watermelon(num3):sum3=10*num3return sum3+num3
num1=int(input("Enter the amount of apple:"))
money1=apple(num1)
num2=int(input("Enter the amount of pineapple:"))
money2=pineapple(num2)
num3=int(input("Enter the amount of watermelon:"))
money3=watermelon(num3)
money=money1+money2+money3
print(money)

列表常用内置函数:

  • mylist.append(b)列表末尾加上b元素
  • mylist.insert(a,b)a表示插入元素b的索引
  • mylist.remove(b)移除列表中b的第一个匹配项
  • number=mylist.pop(a)弹出a索引对应的元素,若无a为空括号,默认弹出列表中最后一个元素除此之外,pop可接住弹出元素,返回被删除元素的值
  • del mylist[a],删除a索引对应的元素,无返回值功能
  • len(list)max(list)min(list)list.count(b)list.index(b)list.clear()list.copy()分别表示长度、最大值、最小值、b出现次数、与b匹配的第一个元素的索引、清空、复制
list=[0,1,2,3,4]
copylist=list
list.pop()
print(list,copylist)

输出结果:
[0,1,2,3][0,1,2,3]

list=[0,1,2,3,4]
copylist=list.copy()
list.pop()
print(list,copylist)

输出结果:
[0,1,2,3][0,1,2,3,4]

直接给新列表赋值,复制的是原列表的存储地址,元素本身并没有复制成两份,而copy能返回复制原列表中的后产生的一组新元素的存储地址

Python编程基础相关推荐

  1. python外星人入侵游戏图片_跪求一个问题@关于外星人入侵游戏(《python编程基础从入门到实...

    我在学着编写<python编程基础从入门到实践>的"外星人入侵游戏"的时候,报错如下: Traceback (most recent call last): File ...

  2. python编程基础语法-Python编程基础语法快速入门

    1. 课程咨询加老师助理微信:助理1微信: chenjinglei88 ,助理2微信: omf6757 2. 决定购买并想得到陈敬雷老师亲自指导(课程或自己项目难题均可)加老师微信: chenjing ...

  3. python 科学计算基础教程电子版-自学Python 编程基础、科学计算及数据分析

    自学Python 编程基础.科学计算及数据分析 epub pdf mobi txt 下载 自学Python 编程基础.科学计算及数据分析 epub pdf mobi txt 下载 ☆☆☆☆☆ 李金 著 ...

  4. python编程基础与应用-Python程序设计基础与应用

    图书简介 配套资源:部分全彩印刷.电子课件.教学大纲.习题答案.源代码 本书特色: ★知名Python教育者董付国老师新作. ★言简意赅,案例丰富,配套资源超全部分内容全彩呈现. ★本书全部代码适用于 ...

  5. 《Python编程快速上手——让繁琐工作自动化》——第一部分 Python编程基础 第1章 Python基础 1.1 在交互式环境中输入表达式...

    本节书摘来自异步社区<Python编程快速上手--让繁琐工作自动化>一书中的第1章,第1.1节,作者[美] Al Sweigart,王海鹏 译,更多章节内容可以访问云栖社区"异步 ...

  6. 【不会吧不会吧,不会有人真的三分钟入门Python了吧?】Python编程基础

    python编程基础 变量 字符串 字符串是Python中最常用的数据类型.我们可以使用引号('或者")来创建字符串. string = 'hello world.' name = &quo ...

  7. python编程基础_月隐学python第2课

    python编程基础_月隐学python第2课 学习目标 掌握变量的输入和输出 掌握数据类型的基本概念 掌握算数运算 1.变量的输入和输出 1.1 变量输入 使用input输入 input用于输入数据 ...

  8. 大一python基础编程试卷_2020大学慕课Python编程基础试题及答案

    2020大学慕课Python编程基础试题及答案 更多相关问题 四川总面积48.6万平方公里,居全国第()位. 国民经济恢复是在() 马化腾是独自创立了腾讯公司 智慧职教: 颈静脉搏动可见于 马化腾是独 ...

  9. python在线作业_南开大学20春学期《Python编程基础》在线作业参考答案

    南开大学20春学期(1709.1803.1809.1903.1909.2003)<Python编程基础>在线作业 试卷总分:100 得分:98 一.单选题(共20 道试题,共40 分) 1 ...

  10. python编程基础知识点_12个关于Python编程基础知识的总结

    学习任何语言的时候,打好基础非常重要.就像学英文,要知道26个字母,还要学会单词.句型.语法等等.那么Python编程也一样,对于刚入门学习的人更应该打好基础.下面课课家收集了常用的12种Python ...

最新文章

  1. bgp选路原则【第二部】
  2. ubuntu常见错误–Could not get lock /var/lib/dpkg/lock解决
  3. smartarm3250 performance
  4. BP神经网络-- C语言实现
  5. 详细的mongo工具手册,包含常见CURD+条件操作+聚合+案例
  6. 常用命令之------tcpdump
  7. 什么叫云平台_为什么说云原生会成为未来企业技术变迁的趋势
  8. 整理Java基础知识--NumberMath类
  9. 继裁员15%后 滴滴宣布本月25日开始减少员工福利
  10. 玩转SpringBoot 2.x 之搭建 Actuator 和 SpringBoot Admin监控篇
  11. 认识Spring以及环境的配置
  12. log4net使用注意
  13. 像 C 一样快,Ruby 般丝滑的 Crystal 发布 1.0 版本,你看好吗?
  14. 李飞飞之后谷歌再失华裔高管,谷歌AI中国中心总裁李佳离职创业
  15. 互联网公司这一年,我被迫知道了这些内幕和秘密...
  16. Veritas Backup Exec 21安装
  17. 采用高通CRS8635的一款蓝牙耳机低功耗评测数据,供交流讨论!
  18. C#方法名前的方括号是干嘛用的呀?
  19. 物理内存是什么是计算机的显卡内存吗,物理内存和虚拟内存是什么意思怎么理解...
  20. linux虚拟机克隆mac地址冲突,虚拟机下linux迁移造成MAC地址异常处理办法(示例代码)...

热门文章

  1. 嵌入式软件开发之程序架构(一)
  2. 微信小程序登陆注册功能实现
  3. 项目管理十大知识领域(二)--- 项目范围管理(过程、输入、工具和技术、输出)
  4. [转载]关于CIPS不得不知道的14个要点
  5. 深度学习之超分辨率算法——SRCNN
  6. Unity手机上查看日志的插件LogViewer
  7. 红米note10 pro刷机
  8. 云南省A级旅游景区名录(截止2016年12月)
  9. 利用Python批量修改多个ass字幕文件
  10. 树莓派默认密码_树莓派介绍:没有显示器,怎样远程控制树莓派?