python基础教程一
安装
安装python,建议不要直接安装python,可以直接安装anaconda+pycharm。
定义功能
Python 使用 def开始函数定义,紧接着是函数名,括号内部为函数的参数,内部为函数的 具体功能实现代码,如果想要函数有返回值, 在 expressions 中的逻辑代码中用 return 返回。
def function():
print('This is a function')
a = 1+2
print(a)
函数参数
我们在使用的调用函数的时候,想要指定一些变量的值在函数中使用,那么这些变量就是函数的参数,函数调用的时候, 传入即可。
def func(a, b):
c = a+b
print('the c is ', c)
函数默认参数
我们在定义函数时有时候有些参数在大部分情况下是相同的,只不过为了提高函数的适用性,提供了一些备选的参数, 为了方便函数调用,我们可以将这些参数设置为默认参数,那么该参数在函数调用过程中可以不需要明确给出。
def sale_car(price, color='red', brand = 'carmy', is_second_hand = True):
print('price', price,
'color', color,
'brand', brand,
'is_second_hand', is_second_hand,)
在这里定义了一个 sale_car 函数,参数为车的属性,但除了 price 之外,像 color, brand 和 is_second_hand 都是有默认值的,如果我们调用函数 sale_car(1000), 那么与 sale_car(1000, ‘red’, ‘carmy’, True) 是一样的效果。当然也可以在函数调用过程中传入特定的参数用来修改默认参数。通过默认参数可以减轻我们函数调用的复杂度。
可变参数
顾名思义,函数的可变参数是传入的参数可以变化的,1个,2个到任意个。当然可以将这些 参数封装成一个 list 或者 tuple 传入,但不够 pythonic。使用可变参数可以很好解决该问题,注意可变参数在函数定义不能出现在特定参数和默认参数前面,因为可变参数会吞噬掉这些参数。
def report(name, *grades):
total_grade = 0
for grade in grades:
total_grade += grade
print(name, 'total grade is ', total_grade)```
定义了一个函数,传入一个参数为 name, 后面的参数 *grades 使用了 * 修饰,表明该参数是一个可变参数,这是一个可迭代的对象。该函数输入姓名和各科的成绩,输出姓名和总共成绩。所以可以这样调用函数 report(‘Mike’, 8, 9),输出的结果为 Mike total grade is 17, 也可以这样调用 report(‘Mike’, 8, 9, 10),输出的结果为 Mike total grade is 27.
关键字参数
def portrait(name, **kw):
print('name is', name)
for k,v in kw.items():
print(k, v)
定义了一个函数,传入一个参数 name, 和关键字参数 kw,使用了 ** 修饰。表明该参数是关键字参数,通常来讲关键字参数是放在函数参数列表的最后。如果调用参数 portrait(‘Mike’, age=24, country=‘China’, education=‘bachelor’) 输出:
name is Mike
age 24
country China
education bachelor
变量形式
全局&局部变量
局部变量:在 def 中, 我们可以定义一个局部变量, 这个变量 a 只能在这个功能 fun 中有效, 出了这个功能, a 这个变量就不是那个局部的 a。
全局变量:那如何在外部也能调用一个在局部里修改了的全局变量呢。首先我们在外部定义一个全局变量 a=None, 然后再 fun() 中声明 这个 a 是来自外部的 a。声明方式就是 global a。然后对这个外部的 a 修改后, 修改的效果会被施加到外部的 a 上。所以我们将能看到运行完 fun(), a 的值从 None 变成了 20。
APPLY = 100 # 全局变量
a = None
def fun():
global a # 使用之前在全局里定义的 a
a = 20 # 现在的 a 是全局变量了
return a+100
print(APPLE) # 100
print('a past:', a) # None
fun()
print('a now:', a) # 20
模块安装
有了anaconda之后就自动安装很多包了。
文件读取
文件读取1
\n 换行命令
\t tab 对齐
text='\tThis is my first test.\n\tThis is the second line.\n\tThis is the third line'
print(text) #延伸 使用 \t 对齐
"""
This is my first test.
This is the second line.
This is the third line
"""
open 读文件方式
使用 open 能够打开一个文件, open 的第一个参数为文件名和路径== ‘my file.txt’, 第二个参数为将要以什么方式打开它, 比如 w ==为可写方式. 如果计算机没有找到 ‘my file.txt’ 这个文件, w 方式能够创建一个新的文件, 并命名为 my file.txt
my_file=open('my file.txt','w') #用法: open('文件名','形式'), 其中形式有'w