首页 > 编程语言 > 详细

Python学习笔记-03

时间:2019-01-16 16:15:54      阅读:179      评论:0      收藏:0      [点我收藏+]

21.元组:一个不可变的列表

定义完之后就不可变,只能读取其中数据,不能重新赋值。

用()定义

fruits = ("apple", "orange", "pear")

print(fruits)

输出:

(‘apple‘, ‘orange‘, ‘pear‘)

注意这里的括号是小括号,不是列表的中括号

当强行给元组进行赋值操作时,就会报错

fruits = ("apple", "orange", "pear")

fruits[1] = "banana"

print(fruits)

TypeError: ‘tuple‘ object does not support item assignment

 

22.元组使用注意事项:

当元组中仅存在一个数字时,在定义时为了产生歧义,需要定义成为以下形式

num = (1,)

因为小括号在Python中也是数学运算的括号,(1)会产生歧义,导致认为是一个括号中的数字1

 

23.“可变”元组

元组是可以存储列表的,当存储列表时,列表中的元素是可变的,

hobby = ["运动", "唱歌", "读书"]

person = ("张三", 17, "male", hobby, True)

hobby[1] = "打游戏"

print(person)

输出:

(‘张三‘, 17, ‘male‘, [‘运动‘, ‘打游戏‘, ‘读书‘], True)

 

hobby = ["运动", "唱歌", "读书"]

person = ("张三", 17, "male", hobby, True)

hobby.append("打游戏")

print(person)

输出:

(‘张三‘, 17, ‘male‘, [‘运动‘, ‘唱歌‘, ‘读书‘, ‘打游戏‘], True)

在本例中,元组并没有变化,而变化的是元组中的列表中的元素,指向的内存对象没变

如果改变指向内存的对象

hobby1 = ["运动", "唱歌", "读书"]

hobby2 = ["运动", "唱歌", "读书"]

person = ("张三", 17, "male", hobby, True)

person[3] = hobby2

print(person)

这样就会报错

TypeError: ‘tuple‘ object does not support item assignment

 

24.数据类型转换str --> int

在程序中,往往需要对相关的数据类型进行一定转化运用,比如字符串类型转化成为数字类型进行大小比较

a = "2"

print(a)

print(int(a))

输出:

2

2

虽然输出都是2,但是这两个代表的意义完全不同,第一个2是字符串,第二个2是整数,第二个2进行数字大小比较,第一个2不行

 

25.判断语句if

计算机能够自动化执行任务,很多情况下都是依靠判断和循环语句实现,判断语句能够让程序执行时进行选择,当出现什么情况时,执行什么语句

判断语句的格式:

if 判断条件:

  执行语句

elif 判断条件:

  执行语句

else 判断条件:

  执行语句

其中elif可以重复多次

执行语句之前需要进行缩进(Tab或者使用4个空格)

判断之后需要使用冒号

判断语句是由上而下执行的,当满足一个条件之后,后面的执行语句都不再执行了

例子:在游戏中,经常会判断角色的血量,当大于某个值时,健康,当小于某个值时,负伤,当小于等于0时,角色死亡。

hp = 30

if hp > 50:

    print("您处于健康状态")

elif hp > 0:

    print("您处于负伤状态")

else:

    print("您的角色已死亡")

输出:

您处于负伤状态

 

26.特殊的判断语句

if x:

    执行语句

当x为非0值,非空值,非空list时就判断为True,执行语句

if "a":

    print("这是一个非空值")

输出:

这是一个非空值

 

27.print()函数

print()函数默认是带换行的

print(data, end="")

end=""可以不写,默认值是end="\n"

也就是说,默认的end是换行操作,当如果不需要换行操作时,可以修改end值

print("爱我")

print("中华")

print("!")

 

print("爱我", end="")

print("中华", end="")

print("!", end="")

输出:

 

爱我

中华

!

爱我中华!

当输出一系列数字时,还可以通过end=""中间加符号进行分割

 

print("2", end="、")

print("4", end="、")

print("6", end="")

输出:

2、4、6

 

28.range()函数

range()函数可以生成一个有序的迭代对象

完整的语法是range(start,stop,step)

start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);

stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5

step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

直接打印range函数,输出的是一个对象

print(range(10))

print(range(1,10))

print(range(1,10,2)

输出:

range(0, 10)

range(1, 10)

range(1, 10, 2)

可以通过迭代的形式输出其中的值

for i in range(10):

    print(i, end="、")

输出:

2、4、6、0、1、2、3、4、5、6、7、8、9、

如果需要消除最后一个顿号,可以进行判断:

for i in range(10):

    if i == len(range(10) - 1):

        print(i)

    else:

        print(i, end="、")

输出:

0、1、2、3、4、5、6、7、8、9

 

 

29.循环语句--for()

循环输出列表中元素

fruits = ["apple", "orange", "banana"]

for i in fruits:

    print(i)

输出:

apple

orange

banana

循环累加:

sum = 0

for i in range(101):

    sum = sum + i

print(sum)

输出:

5050

 

30.循环语句--while()

满足条件不断循环,不满足条件就跳出循环

while 条件判断:

    执行语句

while()循环计算1+2+...+100

i = 100

sum = 0

while i == 0:

    sum = sum + i

    i = i - 1

print(sum)

输出:

5050

循环输出列表中元素

fruits = ["apple", "orange", "banana"]

i = 0

while i < len(fruits):

    print(fruits[i])

    i = i + 1

输出:

apple

orange

banana

 

Python学习笔记-03

原文:https://www.cnblogs.com/tangnightmare/p/10277369.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!