8072人加入学习
(35人评价)
Python零基础入门学习2020最新版(SiKi)

使用Python3.8 于2019/10/20开始录制

价格 免费

Python有自己的常用模块,用import导入

 

定义自己的模块并导入:

  • Python里一个文件就是一个模块,模块名就是文件名。所以创建py文档即可
  • 注意当前的文件与要引用的目录要在同一个目录下
  • 不加后缀
  • 使用模块的方法时,前面要加上mok

例子: 

import test

test.test1()

[展开全文]

可变个数的参数,使用*+变量名

def test(*n):
    print(n)

test()
test(1)
test(3)

 

则输出的是元组

如果有可变个数参数,则需要放在其他参数的后面

 

[展开全文]

函数和字典结合使用:

def test(n,a):
    d = {'name': n, 'age': a}
    return d

print(test('siki','18'))

 

函数和列表结合使用:

如果给函数传递了列表,则函数里的会对原列表进行修改,例如:

l = [ 'siki' , 'libai' , 'dufu' ]
def test(l):
    del(l[1])

test(l)
print(l)

则l里的‘libai’会删掉

 

如何不使原函数发生变化?复制一份,例如:

l = [ 'siki' , 'libai' , 'dufu' ]
def test(l):
    del(l[1])

test(l[:])
print(l)

 

[展开全文]

全局变量和局部变量重名的情况:

1. 访问局部(这个函数自己)时,会使用局部变量的值

2. 在函数外访问这个变量时,会使用全局变量

 

在局部里修改全局的值:

用 global + 变量名,例如:

name = 'globalname'
def test():
    global name
    name = 'localname'
    print(name)

test()
print(name)

 

 

[展开全文]

局部变量:仅在局部作用域作用,在函数内定义的变量

全局变量:全局有用,在函数外定义的变量

 

 

[展开全文]

定义函数时,给默认值

  • 作用:调用时可以不给传递值了,直接使用默认值
  • 带默认值的参数必须放在函数的后面
  • 如果想保持中间的默认值不变,后面的修改,则使用关键字参数,例子:

def add(a,b=10,c=8):
    print(a+b+c)

add(a=1, c=6)

 

 

 

[展开全文]

参数的类型:

1. 位置参数

按照位置调用

2. 关键字参数

  • 按照关键字调用
  • 比如:

1. print('hello', end='')

print('world')

则不会换行,则end为关键字参数

2. print('hello', 'world', sep = '-')

sep可以决定两个字符之间的链接符号

  • 关键字的位置:

1. 放在正常参数的后面

2. 各个关键字参数之间先后顺序无所谓

  • 例子:

def add(a,b):
    print(a+b)

add(a=1,b=9)

[展开全文]

1. 返回值

def add(a,b):
    res = a + b
    return res

 

res = add(5,19)

print(res)

1.1 返回值:

  • return返回了res=a+b,称为返回值。下面的res = add(5,19)把return回来的值赋值给了res
  • return也可以直接写成 return a+b
  • 一般函数有返回值时,大部分是有用的
  • print没有返回值,len的返回值是长度,input返回值是用户输入,list的返回值是转换好的列表

1.2 函数的调用:

是按照位置调用的,不可以调换位置,也不可以少写

 

2. none值

数值类型:NoneType,这个类型里只有none,类似布尔类型只有两个值

适用情况:函数没有返回值时

 

[展开全文]

增加函数的灵活性,给函数加参数:

def hello(name):
    print('hello' + name)

 

hello('siki')

hello('mike')

 

则 hello(name)里的name是给的变量,后面调用hello时括号里给出变量

 

name:形参

siki mike:实参
 

给多个参数:

def add(a,b):
    res = a + b
    print(res)

add(5,19)

两个参数之间用逗号

 

[展开全文]

函数类型:

1. 内置函数

2. 自定义函数

方法:

def methodName():

                 Methodbody

讲解:

def 是定义一个函数(注意加:)

methodname是方法名,自己定义的

methodbody是方法体,前面有缩进,方法体可以包含多行语句

 

自定义函数的目的:方便调用多次使用的代码

 

[展开全文]

1. 利用while给字典输入数据:

d = {}
while True:
    key = input('input key:')
    value = input('input value:')
    d[key]=value
    res = input('any new key or value? (yes/no)')
    if res == 'no':
        break
print(d)

 

2. 把print的输出不换行

原理:当print后不进行定义时,则默认是 end='\n', 即换行

print(i, end='\n')

因此,删去\n就不会换行了,中间可以加自己想用的分隔符,如空格、横杠等

所以在i后面添加多个\n时,可以进行多个换行

[展开全文]

1. 将一个列表的值移到另一个列表:

l1 = [ 'sz' , 'gz' , 'bj' , 'hk' ]
l2 = [ ]

while l1 :
    l2.append(l1.pop())

print(l1)
print(l2)
 

如果在while后面加个列表,如上面,则列表不为空时,返回结果为true;为空则为false

 

2. 把列表里的某一个值(可能重复)全部移除:

l = [ 'sz' , 'gz' , 'bj' , 'hk' , 'sz' , 'sz' ]

while 'sz' in l:
    l.remove('sz')

 

print(l)

[展开全文]

遍历列表

1. 遍历列表用for循环比较方便

2. 用while循环列表:

l = [ 'sz' , 'gz' , 'bj' , 'hk' ]

i = 0
#len(l)-1是最大索引值
while i <= len(l)-1:
    print(l[i])
    i += 1

 

遍历字典:

d = { 'name' : 'siki' , 'age' : 90}

#d.keys()可以获得所有的键
i = 0
keyList = list(d.keys())
while i <len(keyList):
    key = keyList[i]
    value = d[key]
    print(key,value)
    i += 1

[展开全文]

 

 

下面这个代码,会导致即使输入了0,也会再操作一次再停止

i = 1
while i != 0 :
    i = int(input('input number:'))
    if i %2 == 0 :
        print('oushu')
        print(i)

[展开全文]

方法一:

he = 0
i = -1
while he <= 100 :
    i = int(input('input int:'))
    he += i
    
print(he)

方法二:用标注位

he = 0
i = -1
flag = True
while he <= 100 :
    i = int(input('input int:'))
    he += i
    if he>100:
        flag = False
print(he)

方法三:利用break

he = 0
i = -1
while True :
    i = int(input('input int:'))
    he += i
    if he>100:
        break
print(he)

 

[展开全文]

方法一:

he = 0
i = -1
while i != 0 :
    i = int(input())
    he += i
print(he)

这里在最开始给i赋值为-1,不影响循环,因为while里是用用户输入的覆盖了

 

自己的方法:

he = 0
print('input a number')
i = int(input())
while i != 0:
    he += i
    print('input a number')
    i = int(input())
    
print(he)

这里的提示句可以直接写到input里,如input(’请输入一个数字:’)

 

[展开全文]

方法一,用for:

he = 0
for i in range(1,101):
    he += i

print(he)

 

方法二,用while:

he = 0
i = 1
while i < 101:
    he += i
    i += 1
print(he)

[展开全文]

while循环类似for遍历,二者在不同的情况下好用

 

while循环体的语句:

while True:

         do xx

当while后面接的语句为true时,则会一直循环下面的命令(如果没有终止条件,属于死循环)

 

如:

i = 1
while i<=10:
    print(i)
    i += 1

(最后i其实是11了)

 

[展开全文]

判断键是否在字典里:

res = 'gender' in stu1.keys()
print (res)

判断值是否在字典里:

res = 'siki' in stu1.values()
print (res)

如果是siki' in stu1,则默认是判断是否在键里

 

设置键的默认值:

stu1.setdefault('name','micheal')

  • 即给字典stu1里的键name添加了默认值'micheal'
  • 当name里没有值时,才会添加Micheal;如果name有值,则不会添加Micheal
  • 用途:防止某个键不存在时,运行程序崩溃

 

 

[展开全文]

取得键值对的集合:

主要为了方便遍历键值对

方式:stu1.items()

相当于形成了元祖

 

使用方法:

1. 遍历方法:

for i in stu1.items():
    print(i)

如果用print(i[0] , i[1]),则是分别打印出每个键值对的键和值,也可以用如下的方法:

for k,v in stu1.items():

     print(k,v)

 

2. 生成列表

items = list(stu1.items())
print(items)

 

[展开全文]

授课教师

SiKi学院老师

课程特色

视频(137)
下载资料(1)