Python人工智能 - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(7评价)
优惠后 ¥1599.00优惠前 ¥1999.00 双十一全年最大力度限时优惠
1对1 答疑即时回复7天无理由退款30天价保提问必答

服务保障

1对1 答疑

提供专属的一对一在线答疑,快速答疑解惑。

即时回复

及时响应学习咨询,帮助解决问题。

7天无理由退款

购买后7天内可申请无理由退款。

30天价保

购买后30天内如遇降价,可申请价保。

提问必答

对于提问做到有问必答,帮您扫清学习过程中的种种障碍

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

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

 

 

[展开全文]
abcdebbie · 2020-02-20 · 0

定义函数时,给默认值

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

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

add(a=1, c=6)

 

 

 

[展开全文]
abcdebbie · 2020-02-19 · 0

参数的类型:

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)

[展开全文]
abcdebbie · 2020-02-19 · 0

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,类似布尔类型只有两个值

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

 

[展开全文]
abcdebbie · 2020-02-19 · 0

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

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)

两个参数之间用逗号

 

[展开全文]
abcdebbie · 2020-02-19 · 0

函数类型:

1. 内置函数

2. 自定义函数

方法:

def methodName():

                 Methodbody

讲解:

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

methodname是方法名,自己定义的

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

 

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

 

[展开全文]
abcdebbie · 2020-02-19 · 0

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时,可以进行多个换行

[展开全文]
abcdebbie · 2020-02-16 · 0

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)

[展开全文]
abcdebbie · 2020-02-16 · 0

遍历列表

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

[展开全文]
abcdebbie · 2020-02-16 · 0

 

 

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

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

[展开全文]
abcdebbie · 2020-02-16 · 0

方法一:

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)

 

[展开全文]
abcdebbie · 2020-02-16 · 0

方法一:

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(’请输入一个数字:’)

 

[展开全文]
abcdebbie · 2020-02-16 · 0

方法一,用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)

[展开全文]
abcdebbie · 2020-02-16 · 0

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

 

while循环体的语句:

while True:

         do xx

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

 

如:

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

(最后i其实是11了)

 

[展开全文]
abcdebbie · 2020-02-16 · 0

列表中元素的改变:

1. 修改:

列表名[N] = '新数据'

2. 添加:

(1)添加到末尾

列表名.append('新数据')

(2)插入

列表名.insert(N,'新数据')

N代表新数据插入的位置,原来在这个位置的及后面的相应向后走

3. 删除

(1)根据索引删除

del(列表名[N]) 或 del 列表名[N]

N:要删除的元素所在的位置

(2)根据数据删除

列表名.remove('要删除的数据')

注意如果列表里有多个重复的数字,则remove会删除掉第一个,后面的不会删

[展开全文]
abcdebbie · 2020-02-16 · 0

判断键是否在字典里:

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
  • 用途:防止某个键不存在时,运行程序崩溃

 

 

[展开全文]
abcdebbie · 2020-02-16 · 0

取得键值对的集合:

主要为了方便遍历键值对

方式: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)

 

[展开全文]
abcdebbie · 2020-02-16 · 0

获得键的集合:

stu1.keys()

stu1为字典名字

也可以直接输出

 

使用方式:

1. 用for循环遍历:

     for k in stu1.keys():

     print(k)

2. 形成列表

keys = list(stu1.keys())

print(keys)

 

获得值的集合:

stu1.values()

使用方法同上

[展开全文]
abcdebbie · 2020-02-16 · 0

两个列表相等:

长度和内容完全一样,并且顺序也一样

 

两个字典相同:

内容一样,顺序不相关

 

用 == 进行判断

[展开全文]
abcdebbie · 2020-02-16 · 0

列表里嵌套字典:

students = [ { 'name' : 'siki'  , 'age' : 17 , 'gender' : 'boy' } ,
             { 'name' : 'lic'  , 'age' : 27 , 'gender' : 'girl' } ,
             { 'name' : 'siki'  , 'age' : 17 , 'gender' : 'boy' } ,
             { 'name' : 'siki'  , 'age' : 17 , 'gender' : 'boy' } ]

 

访问:print (students[1]['gender'])

 

字典里嵌套列表:

stu1 = { 'name' : 'siki'  , 'age' : 17 , 'gender' : 'boy' , 'hobby' : ['篮球','zu'] }

 

访问:print(stu1['hobby'][0])

[展开全文]
abcdebbie · 2020-02-16 · 0