Python语言程序设计基础(5)—— 函数和代码复用
lambda
sum = lambda x,y : x + y
print(sum(3,3),type(sum))
默认参数
def prints(str,times = 2) :
print(str*times)
prints("Tree",3)
变长参数
def sums(*a):
res = 0
for i in a:
res += i
return res print(sums(1,2,3,4,5))
return
def swap(a,b):
return b,a
print(swap("Tree",3))
作用范围
n = 1
def func(a,b):
n = b
return a*b
print(func("Dream",2),n)
ls = [] def funs(a,b):
ls.append(b)
funs(2,3)
print(ls)
lss = []
def funss(a):
lss = []
lss.append(a)
funss(2)
print(lss)
datatime.datatime
from datetime import datetime
today = datetime.now()
print(today)
print(today.year,today.month,today.day,today.hour,today.minute,today.second) someday = datetime(2018,10,18)
print(someday) print(today.strftime("%Y %m %d %H:%M:%S"))
print("今天是{0:%Y}年{0:%m}月{0:%d}日".format(today))
七段数码管
import turtle
import datetime def drawLine(flag):
turtle.pendown() if flag else turtle.penup()
turtle.forward(40)
turtle.right(90) def drawDight(x) :
if x in [2,3,4,5,6,8,9]:
drawLine(True)
else :
drawLine(False) if x in [0,1,3,4,5,6,7,8,9]:
drawLine(True)
else :
drawLine(False) if x in [0,2,3,5,6,7,8,9]:
drawLine(True)
else :
drawLine(False) if x in [0,2,6,8]:
drawLine(True)
else :
drawLine(False) turtle.right(-90) if x in [0,4,5,6,8,9]:
drawLine(True)
else :
drawLine(False) if x in [0,2,3,5,6,7,8,9]:
drawLine(True)
else :
drawLine(False) if x in [0,1,2,3,4,7,8,9]:
drawLine(True)
else :
drawLine(False) turtle.right(180)
turtle.penup()
turtle.forward(20) def drawDate(date):
print(date)
for i in date:
#print(int(i))
drawDight(int(i)) def main():
turtle.setup(0.5,0.5)
turtle.penup()
turtle.forward(-300)
turtle.pensize(3)
drawDate(datetime.datetime.now().strftime("%Y%m%d"))
turtle.hideturtle() main()
Pycharm调试技巧
F8 下一步,不进入函数
F7 下一步,进入函数,包括库函数
反转字符串
str = input()
lens = len(str)
ls = list(str)
for i in range(lens//2):
#print(str[i])
ls[i] ,ls[lens-i-1] = ls[lens-i-1], ls[i]
print("".join(ls))
def reverse(s):
if len(s) == 1:
return s
return reverse(s[1:]) + s[0] print(reverse("TreeDream"))
科赫曲线
import turtle
import os def koch(size,n):
if n == 0:
turtle.forward(size)
else:
for angle in [0,60,-120,60]:
turtle.left(angle)
koch(size/3,n-1) def main():
x = int(input())
turtle.setup(0.5,0.5)
turtle.speed(0)
turtle.penup()
turtle.goto(-300,-50)
turtle.pendown()
turtle.pensize(2)
koch(600,x)
turtle.hideturtle() main()
Python语言程序设计基础(5)—— 函数和代码复用的更多相关文章
- Python基础篇(三)_函数及代码复用
Python基础篇_函数及代码复用 函数的定义.使用: 函数的定义:通过保留字def实现. 定义形式:def <函数名>(<参数列表>): <函数体> return ...
- python语言程序设计基础 习题 天天向上的力量(math.pow)
实例1: 一年365天,,以第一天的能力值为基数1.0,当好好学习时能力值相比前一天提高1%,没有学习时能力值相比前天要降低1%,每天努力和每天放任,一年下来的能力值相差多少? 解析: 如果每天都好好 ...
- python语言程序设计基础(嵩天)第二章课后习题
p56: *2.1 实例1的修改.改造实例代码1.1,采用eval(input(<提示内容>))替换现有输入部分,并使输出的温度值为整数. 源代码: TempStr=input(" ...
- Python语言程序设计基础(4)—— 程序的控制结构
PM2.5 pm = eval(input()) if pm>=75: print("空气存在污染") else : print("空气没有污染") pr ...
- python语言程序设计基础(嵩天)第四章课后习题部分答案
p121: *题4.1:猜数字游戏.在程序中预设一个0~9之间的整数,让用户通过键盘输入所猜的数,如果大于预设的数,显示“遗憾,太大了!”:小于预设的数,显示“遗憾,太小了!”,如此循环,直至猜中该数 ...
- python语言程序设计基础(第二版)第五章答案随笔
1.实现isOdd()函数,参数为整数,如果整数是奇数,返回True,否则返回False def isOdd(num): if num % 2 == 0: return True ...
- Python语言程序设计基础(7)—— 文件和数据格式化
返回字符串 file = input() #返回字符串 fo = open(file,"r").read(6) print(fo) 返回列表形式 file = input() fo ...
- Python语言程序设计基础(6)—— 组合数据类型
tuple 元组(创建后不能修改) tuple = "cat","dog","tiger","human" print( ...
- Python语言程序设计基础(3)—— 基本数据类型
天天向上 dayup,dayfactor = 1.0,0.01 for i in range(365): if i % 7 in [6,0]: dayup = dayup*(1-dayfactor) ...
随机推荐
- ansible 实战项目之文件操作(二)
一,前言 如果没有安装好的话看我以前的贴子哦!! 上次安装已经确定通了,所以下面步骤应该是完全ok的 特点: (1).轻量级,无需在客户端安装agent,更新时,只需在操作机上进行一次更新即可: (2 ...
- (转)Nginx静态服务配置---详解root和alias指令
Nginx静态服务配置---详解root和alias指令 原文:https://www.jianshu.com/p/4be0d5882ec5 静态文件 Nginx以其高性能著称,常用与做前端反向代理服 ...
- Spark on Yarn运行错误:Yarn application has already ended! It might have been killed or unable to launch application master
Spark on Yarn模式运行错误: bin/spark-shell --master yarn --deploy-mode client #报错 查看8088页面上的工作日志 错误原因:在执 ...
- VS2008调试程序时出现"XXX mutex not created."
1. 在 VS2008中调试一个程序,怎样都运行不起来(在IDE中无法运行) 出现恶心信息: 2. 但神奇的是,在工程目录下,直接双击exe文件 却可以启动起来,说明编译的文件没问题,有可能是IDE的 ...
- yum安装git
此方法对于RHEL.Fedora.CentOS有效: 1.yum install git 2.yum istall git-svn git-email git-gui gitk
- Java反射机制一 概念和简单的使用方法。
一 概念 java反射机制属于 java动态性之一 ,指的是可以运行时加载,探知,使用编译期间完全未知的类,程序在运行状态中,可以动态的加载一个只有, 名称的类,对于任意一个已加载的类,都能够知道这 ...
- bzoj 5291: [Bjoi2018]链上二次求和
Description 有一条长度为n的链(1≤i<n,点i与点i+1之间有一条边的无向图),每个点有一个整数权值,第i个点的权值是 a_i.现在有m个操作,每个操作如下: 操作1(修改):给定 ...
- Visual Studio中C++项目编译常见问题总结
1. 工程引用外部头文件 工程->属性->配置属性->C/C++ ->常规->附加包含目录:输入头文件存放目录 2. 添加lib库引用 添加lib库的路径:工程-> ...
- (转载)C#获取当前应用程序所在路径及环境变量
一.获取当前文件的路径 string str1=Process.GetCurrentProcess().MainModule.FileName;//可获得当前执行的exe的文件名. string st ...
- 解决:用nvm成功安装nodejs,却无法使用nvm和node命令
问题 一个前端朋友,用Macbook pro成功安装nvm以及node环境,系统查询不到 $ nvm $ -bash: nvm: command not found $ node $ -bash: n ...