摘要
书接前文:
教程使用的还是《Python编程入门到实战》(参考:https://s.click.taobao.com/3AFvciv),本文对应此书,第7、8、9章。本文将摘要分享循环、条件、输入输出、函数、类的知识及Python实战。
适用人群
- 没时间读完一本书,可以花几分钟掌握书本知识
- 待业人员
- 初高中学历转行学编程技术人员
- 在校中学生
- 非计算机专业人员想转行学编程
- 编程爱好者
一 #朋友圈非常火的价值一个亿的AI核心代码#
我们先来写一个一个亿的AI核心代码,再进入我们对循环、输入输出的知识分享。先看AI核心效果如下:
代码及解析(#表示注释)如下:
while True:##一直循环监听
msg = input()##输入等待
msg = msg.replace("吗","")#将你输入的字符串中的‘吗’替换成空格
msg = msg.replace("?","!")#英文?替换成!
msg = msg.replace("?","!")#中文?替换成!
print(msg)#输出回复
六行代码,实现“一个亿”的AI人工智能代码。拿去找投资吧,不用谢
while 循环
从0-9输出,只要i满足i < num 的条件就执行输出和i加1
num = 10
i =0
while i < num:
print(i)
i+=1
通过break退出循环,不再执行循环
num = 10
i =0
while i < num:
print(i)
if i ==5:
break
i+=1
通过continue判断是否执行往下执行,没有退出循环
num = 10
i =0
while i < num:
i+=1
if i%2 ==0:
continue
print(i)
二 函数
1-函数定义
#定义函数fncName
def fucName():
print('你好世界')
#调用函数
fucName()
2-函数传参数
#定义函数fncName
def fucName(msg):
print(msg)
#调用函数
fucName('你好世界')
定义函数fucName的时候形式参数msg,调用函数fucName传入实际参数‘你好世界’。形参与实参,多个形参、实参,按顺序或者通过关键字传入,也可以给形参设定默认值。如下
#定义函数fncName
def fucName(msg,name,user,values='默认值'):
print('msg:'+msg)
print('name:'+name)
print('user:'+user)
print('values::'+values)
#调用函数
fucName('你好世界','freo-studio','freo')
#按关键字传递实参
fucName(name='你好世界',msg='freo-studio',user='freo')
#没有传入参数,会报错,因为有些形参没有给定默认值
fucName()
3-函数返回值
#定义函数fncName
def fucName(msg,name,user,values='默认值'):
return name+user+msg
#函数返回一个值
res = fucName(name='你好世界',msg=' freo-studio ',user=' freo ')
print(res)
很多时候我们定义函数返回多个值
#定义函数fncName
def fucName(msg,name,user,values='默认值'):
return user+name,msg
#函数返回多个值
userName,Msg = fucName(name='Studio',msg=' 你好世界 ',user='Freo ')
print(userName)
print(Msg)
4-将函数封装成模块
将下面代码,保存为freostudio.py
#定义函数fncName
def fucName(msg,name,user,values='默认值'):
return user+name,msg
新建py文件,输入下面代码调用freostudio模块中的函数,保存为callFS.py ,按下F5运行
import freostudio as fs
#调用模块的函数
userName,Msg = fs.fucName(name='Studio',msg=' 你好世界 ',user='Freo ')
print(userName)
print(Msg)
三 类与模块
1-创建类并实例化
##定义类
class Dog():
#初始化
def __init__(self,name,age):
self.name = name
self.age = age
def sit(self):
print(self.name.title()+" 小狗蹲下 ")
def roll_over(self):
print(self.name.title() + " 小狗打滚 ")
#创建类实例
my_dog = Dog('中华田园犬',2)
my_dog.sit()
my_dog.roll_over()
运行结果:
2-类的继承
##定义类
class Dog():
#初始化
def __init__(self,name,age):
self.name = name
self.age = age
def sit(self):
print(self.name.title()+" 小狗蹲下 ")
def roll_over(self):
print(self.name.title() + " 小狗打滚 ")
#继承Dog类,创建中国狗 ChinaDog
class ChinaDog(Dog):
def __int__(self,name,age):
super.__init__(name,age)#初始化父类属性
def say(self):
print(self.name+" 汪汪汪")
#重写父类的方法
def roll_over(self):
print(self.name.title() + " 重写的狗不打滚 ")
#创建类实例
my_dog = ChinaDog('中华田园犬',2)
my_dog.sit()
my_dog.roll_over()
my_dog.say()
封装成模块导入类:将class 部分保存为Dog.py文件,新建main.py如下编写代码:
from Dog import ChinaDog
#创建类实例
my_dog = ChinaDog('中华田园犬',2)
my_dog.sit()
my_dog.roll_over()
my_dog.say()
导入模块的方法
import Dog #导入整个模块
from Dog import ChinaDog #导入模块Dog的ChinaDog类
from Dog import * #导入模块Dog的所有类
四 总结
通过本文,掌握函数、输入输出、类、模块的知识。可以实现一定模块化的小程序开发。将所有代码敲一遍,对编程过程熟悉实战下,效果更佳。眼过百遍,不如手过一遍。多练习才是王道,不然照着敲代码都敲错.教程使用的还是《Python入门到实战》(参考:https://s.click.taobao.com/3AFvciv)