python3.0基本语法_Python3.0学习基本语法·2

10、list列表写法以及输出

s=['弘福寺','卧龙寺','青龙寺','大兴善寺']

print(s)

列表里的数据又可以叫做元素,每个元素都有自己的位置,这个位置叫做索引。

print(s[0]) #打印列表s里面的第0个元素

print(s[3]) #打印列表s里面的第3个元素

print(s[-1]) #打印列表s里面的最后一个元素

print(s[-2]) #打印列表s里面的倒数第二个元素

s[0]指向列表里的第0个元素,使用print() 函数就可以把这个数据显示在屏幕上,让我们看到。

s[-1]代表的是列表中的最后一个元素,s[-2]代表列表中的倒数第二个元素。

从列表中取出某一段数据,即列表的子列表。

s=['弘福寺','大兴善寺','青龙寺','卧龙寺']

print(s[0:4])

print(s[1:3])

print(s[1:])

print(s[:2])

第3行代码:打印列表s里面的第0、1、2、3这几个元素。第4行代码:打印了列表s里面的第1、2这几个元素。

第6行代码:打印列表s里面的第1个和此之后的所有元素。第7行代码:打印列表s里面的第2个元素之前的所有元素。

从【:】左边的数字所代表的元素开始取,取到【:】右边的数字所代表元素的前一个元素为止。

这样取出来的数据还是列表。

补入一个数据,用append() 函数。

s=['弘福寺','大兴善寺','青龙寺','卧龙寺']

s.append('观音禅寺')

print(s)

列表的基本操作:生成列表,取出数据,追加数据。已经学完。

7b8eeead6095

image.png

11、字典(dict)

7b8eeead6095

image.png

d是这里的字典名,可以根据你的需要命名。

一一对应的两个数据分别叫【键】和【值】。键和值之间使用的是冒号,把一个键和值同下一个键和值分隔的是英文逗号。

字典不像列表,里面的数据没有位置(索引),但是我们只要知道了【键】,就可以把对应的【值】给取出来。

比如,你的上司问你,诶,青龙寺的面积是多少平米呢?你就可以这样操作:

d={'弘福寺':1000,'大兴善寺':900,'青龙寺':700,'卧龙寺':500}

print(d['青龙寺'])

b = {1:'布达佩斯',2:'伦敦',3:'巴黎'}

print(type(b))

print(len(b))

注意字典的长度是3,是键的个数,而不是键和值的总数6。

12、

d={1:['甲','乙','丙'],2:['A','B','C']}

#像这样,就是一个二级嵌套。在字典里,嵌套了列表。

a=d[1]

#提取出键1对应的列表['甲','乙','丙'],赋值给a。

b=a[0]

#提取出列表a的第0个元素,'甲',赋值给b。

print(b)

#打印b,获得'甲'。

print(d[1][0])

#直接从字典d中提取'甲'。

事实上,列表和字典可以多级嵌套使用。比如一个列表里嵌套一个字典,字典里再嵌套列表,列表里再嵌套字典……子子孙孙无穷匮也。当我们在提取这种多级嵌套的列表/字典时,要一层一层地取出来。举个例子↑↑↑

从下面的列表中,提取出来字符串'乙'。

list1 = [{1:'甲'},{2:'乙'},{3:'丙'}]

print(list1[1][2])

列表(list)里面只有值(value),而字典(dict)里面有的是一一对应的键(key)和值(value)。

13、for循环

a = [1,2,3]

for i in a:

print(i)

也可以列表取值

s=['弘福寺','大兴善寺','青龙寺','卧龙寺','观音禅寺']

for i in s:

print('恭喜'+i+'入选译经道场')

字典取值

d={'弘福寺':1000,'大兴善寺':900,'青龙寺':700,'卧龙寺':500}

for i in d:

print(i+'的面积是'+str(d[i])+“平方米”)

和for循环常常一起搭配使用的,还有range() 函数。

for i in range(3):

print(i)

整数0,1,2显示在了终端上。所以range(t) 函数是可以生成一个0到t-1的整数序列。

for i in range(13,17):

print(i)

range(a,b) 函数又生成了一个整数序列。range(13,17)中的13是循环变量开始的值,17是上限。

因为这里的 for 循环是为了执行3次循环,range(3)里面的3个整数会被一一取出来。至于每次执行print('我很棒')时,i 这个变量里面是什么东西,并不重要。

所以,range() 函数可以用来帮我们确定循环执行的次数。

range(t) 是可以生成从0—t-1的整数序列

range(a,b)可以生成a—b-1的整数序列

14、

#a、b、c分别代表广东甜食、四川甜食、江南甜食

广东=['榴莲酥','双皮奶','马拉糕','杨枝甘露']

四川=['红糖糍粑','冰粉','米花糖','蛋烘糕']

江南=['青团','桂花糕','酒酿圆子','糖芋苗']

#foodlist代表总的菜单

foodlist=[广东,四川,江南]

for i in foodlist:

print(i)

终端把三个列表的内容都打印出来了,第1行是列表广东里的数据,终端第2行是列表四川里的数据,终端第3行是列表江南里的数据。这是第一次的for循环取出的内容。

继续写,我们的目的是把这些食物一样一样地打印出来,然后询问夫人,那我们就必须继续取列表广东,四川,江南里面的值。

广东=['榴莲酥','双皮奶','马拉糕','杨枝甘露']

四川=['红糖糍粑','冰粉','米花糖','蛋烘糕']

江南=['青团','桂花糕','酒酿圆子','糖芋苗']

foodlist=[广东,四川,江南]

for i in foodlist:

for l in i:

print(l)

q = input('是你想吃的吗')

if q == '是':

print('好哒,我明儿就去找人买')

exit()

print('这里没有夫人爱吃的,我再去找别的甜食')

15、函数function

def greet(name):

print(name+'早上好')

greet('小龙人')

定义函数,然后调用函数,计算机才会理你。

def love():

import time

words = input('请输入一个代表你爱人的英文字母:')

for i in words.split():

print('\n'.join([''.join([(i[(x-y) % len(i)]

if ((x * 0.05) ** 2 + (y * 0.1) ** 2 - 1) ** 3 - (x * 0.05) ** 2 * (y * 0.1) ** 3 <= 0

else ' ')

for x in range(-30, 30)]) for y in range(12, -12, -1)]))

time.sleep(1.5)

love()

def love(name):

import time

for i in words.split():

print('\n'.join([''.join([(i[(x-y) % len(i)]

if ((x * 0.05) ** 2 + (y * 0.1) ** 2 - 1) ** 3 - (x * 0.05) ** 2 * (y * 0.1) ** 3 <= 0

else ' ')

for x in range(-30, 30)]) for y in range(12, -12, -1)]))

time.sleep(1.5)

words = input('请输入一个代表你爱人的英文字母:')

love(words)

16、

当变量处于被定义的函数内时,就是局部变量,只能在这个函数内被访问;当变量处于被定义的函数外时,就是全局变量,可以在程序中的任何位置被访问。

有一个模块叫random,是专门用来处理和随机相关的程序的。

刚刚已经讲过,模块里不止一种函数,我们只要选择适用的函数即可,在这里是random.choice() 。这些都是固定的写法,来看代码怎么写:

import random

import time

list = ['海绵宝宝','派大星','章鱼哥','蟹老板','素以相望','霖']

a = random.choice(list)

print('开奖倒计时', 3)

time.sleep(1)

print('开奖倒计时', 2)

time.sleep(1)

print('开奖倒计时', 1)

time.sleep(1)

print(image)

print('恭喜'+a+'中奖!')

import 某个模块会放在代码最开头,import代表引入。

17、Python给我们提供了一种异常处理的语句——try...except... 它可以在异常出现时即时捕获,然后内部消化掉,让程序继续运行。

num = [0,1,2,3]

for x in num:

print (6/x)

第一位就是0,程序就报错。那么这时,你可以使用try…except语句来帮助你。就像这样:

num = [0,1,2,3]

for x in num:

try:

#尝试执行下列代码

print (6/x)

#使用6除以num中的元素,并输出

except ZeroDivisionError:

#除非发生ZeroDivisionError报错,执行下列代码:

print('0是不能做除数的!')

#打印“0是不能做除数的!”

如果你想省事,下面两个技巧能帮到你:

1.except后面什么也不跟,直接加冒号。意味着,只要报错就执行下面的代码,不管是什么错误类型。

2.报错后执行的代码,你也可以只写一个'pass','pass'的意思就是:什么都不做。'pass'的存在意义是占个位,维护格式完整。比如except语句后面要求你要执行点什么报错后的程序,但你又什么都不想执行,那就pass好了。

所以,请写一个无限循环的小程序,里面请用户输入整数,然后检测是否是整数,如果是整数就结束循环,不是的话,捕获错误并报错(打印--要输入整数噢)!

while 1:

a=input('input a num:')

try:

if type(a)==int:

break

except ValueError:

print('not num')

while True:

try:

a = int(input('请输入一个整数:'))

break

except ValueError:

print('要输入整数噢')

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值