Python编程:从入门到实践|学习笔记 第1~3章

Python编程:从入门到实践 学习笔记

[美] Eric Matthes

1 搭建Python环境

​ 选择Python3环境,pycharm作为Python文本编辑器:

​ 环境:Python-3.8.10(3.9不支持Windows7系统)

​ 编辑器:pycharm-community-2021.1.2

​ hello world代码:

print("Hello Python world!")

2 变量和简单数据类型

2.1 变量

​ 在Python程序中可以随时修改变量的值,Python将始终记录变量的最新值:

​ hello world代码扩展:

#message为定义的一个变量
message="Hello Python world!"
print(message)

message="Hello Python Crash Course world!"
print(message)

​ 运行结果:

#Python输出message的两次更新值
Hello Python world!
Hello Python Crash Course world!
2.1.1 变量的命名和使用
  1. 命名规则

    包含不包含慎用
    字母可打头空格数字1(易看错为字母l)
    数字不可打头Python关键字数字0(易看错为字母o)
    下划线可打头Python函数名
  • Python中使用小写变量名较多
  1. 练习
  • 简单消息:将一条消息存储到变量中,在将其打印出来。

    i = "My first exercise."
    print(i)
    
  • 多条简单消息:将一条消息存储到变量中,将其打印出来;再将变量的值修改为一条新消息,并将其打印出来。

    i="My first exercise."
    print(i)
    
    i="No,this is my second exercise."
    print(i)
    
2.2 字符串

​ Python中,使用引号括起来的都是字符串,引号可以是单引号,也可以是双引号,还可以在双引号中包含单引号或单引号中包含双引号:

"This is a string."
'This is also a string.'

'I told my friend, "Python is my favorite language!"'
"The language 'Python' is named after Monty Python, not the snake."
  • 正确使用单引号(’’)和撇号(’),单引号括起来的字符串中不能包含撇号,双引号("")括起来的字符串可以包含撇号
2.2.1 使用方法修改字符串的大小写

​ 变量使用方法:变量.方法()

  • title():以首字母大写的方式显式每个单词,即将每个单词的首字母改为大写。
  • upper():将字符串中的字母全部改为大写。
  • lower():将字符串中的字母全部改为小写。存储数据时很有用,无法根据现有信息判断正确的大小写形式时,全部存储为小写,需要显式时,再转换为合适的大小写方式。
name = "ada lovelace"
print(name.title())
print(name.upper())
print(name.lower())

​ 运行结果:

Ada Lovelace
ADA LOVELACE
ada lovelace
2.2.2 合并(拼接)字符串

​ Python中,使用加号(+)来合并字符串,合并后的字符串可以存储在一个变量中[1]。或使用合并来创建消息,再把整条消息都存储在一个变量中[2]

#[1]
first_name="ada"
last_name="lovelace"
full_name=first_name+" "+last_name
print("Hello,"+full_name.title()+"!")
#[2]
message="Good morning,"+full_name.title()+"!"
print(message)

​ 运行结果:

Hello,Ada Lovelace!
Good morning,Ada Lovelace!
2.2.3 使用制表符或换行符来添加空白

​ Python编程中,空白泛指任何非打印字符,如空格、制表符和换行符。

符号编程中的字符组合
制表符\t
换行符\n
同时包含制表符和换行符\n\t
2.2.4 删除空白

​ Python能够找到字符串开头和末尾多余的空白:

  • rstrip():去掉字符串末尾的多余空白。直接调用该方法只能暂时删除末尾多余空白,只有将删除操作的结果存回变量中,才能实现永久删除。
    在这里插入图片描述

  • lstrip():去除字符串开头多余空白,需要将操作结果存储到变量中才能实现永久删除。

  • strip():去除两端多余空白,需要将操作结果存储到变量中才能实现永久删除。
    在这里插入图片描述

2.2.5 Python2中的print语句

​ 在Python2中,不需要将打印内容放在括号内。Python2中,有些print语句包含括号,有些不包含。

print"Hello Python2 world!"
2.3 数字
2.3.1 整数

​ 在Python中,可直接对整数做加减乘除运算:
在这里插入图片描述

​ 在Python中,使用两个乘号做乘方运算:
在这里插入图片描述

​ Python还支持运算次序,因此可在同一个表达式中使用多种运算,还可以使用括号来修改运算次序,让Python按指定的次序执行运算:
在这里插入图片描述

2.3.2 浮点数

​ 在Python中,将带小数点的数字都成为浮点数,按照如整数的方式进行加减乘除即可,但计算后,结果中包含的小数位数可能是不确定的:
在这里插入图片描述

  • str():让Python将非字符串值表示为字符串,避免类型错误。

    age=23
    message="Happy "+str(age)+"rd Birthday!"
    print(message)
    

    运行结果:

    Happy 23rd Birthday!
    
2.4 注释

​ 在Python中,使用井号(#)标识注释,井号后面的内容都会被Python解释器忽略,解释器忽略第一行,执行第二行。

3 列表简介

3.1 列表是什么

​ 列表是由一系列按特定顺序排列的元素组成的,元素之间可以没有任何关系。在Python中,用方括号([])来表示列表,用逗号来分隔其中的元素。如何让Python将列表打印出来,Python将打印列表的内部,包括方括号。

bicycles=['trek','cannondale','redline']
print(bicycles)

运行结果:

['trek','cannondale','redline']
3.1.1 访问列表元素

​ 列表是有序集合,因此要访问列表的任何元素,只需将该元素的位置或索引告诉Python即可。要访问列表元素,可指出列表的名称,再指出元素的索引,并将其放在方括号内,此时Python只返回元素,不包括方括号和引号。

  • 在Python中,索引从0而不是1开始的,第一个列表元素的索引为0。

  • 将索引指定为-1,可让Python返回最后一个列表元素。

    bicycles=['trek','cannondale','redline','specialized']
    print(bicycles)
    print(bicycles[1])
    print(bicycles[1].title())
    print(bicycles[3])
    print(bicycles[-1].title())
    

    运行结果:

    ['trek', 'cannondale', 'redline', 'specialized']
    cannondale
    Cannondale
    specialized
    Specialized
    
  • 索引-2返回倒数第二个列表元素,索引-3返回倒数第三个列表元素。

3.1.2 使用列表中的各个值

​ 可像使用其他变量一样使用列表中的各个值,例如使用拼接根据列表中的值来创建消息。

bicycles=['trek','cannondale','redline','specialized']
message="My first bicycle was a "+bicycles[1].title()+"."
print(message)

运行结果:

My first bicycle was a Cannondale.
3.2 修改、添加和删除元素
3.2.1 修改列表元素

​ 要修改列表元素,可指定列表名和要修改的元素索引,再指定该元素的新值。

motorcycles=['honda','yamaha','suzuki']
print(motorcycles)

motorcycles[1]='ducati'
print(motorcycles)

运行结果:

['honda', 'yamaha', 'suzuki']
['honda', 'ducati', 'suzuki']
3.2.2 在列表中添加元素
  1. 在列表末尾添加元素
  • append():在列表的末尾添加新元素,也可以用该方法动态地创建列表。

    #1
    motorcycles=['honda','yamaha','suzuki']
    print(motorcycles)
    
    motorcycles.append('ducati')
    print(motorcycles)
    
    #2
    bicycles=[]
    bicycles.append('trek')
    bicycles.append('cannondale')
    bicycles.append('redline')
    print(bicycles)
    

    运行结果:

    #1
    ['honda', 'yamaha', 'suzuki']
    ['honda', 'yamaha', 'suzuki', 'ducati']
    
    #2
    ['trek', 'cannondale', 'redline']
    
  1. 在列表中插入元素
  • insert():可以在列表中的任何位置添加新元素,需要指定新元素的索引和值。insert(索引,‘值’)

    motorcycles=['honda','yamaha','suzuki']
    print(motorcycles)
    motorcycles.insert(1,'ducati')
    print(motorcycles)
    

    运行结果:

    ['honda', 'yamaha', 'suzuki']
    ['honda', 'ducati', 'yamaha', 'suzuki']
    
3.2.3 从列表中删除元素
  1. 如果知道要删除的元素在列表中的位置,可使用del语句

    motorcycles=['honda','yamaha','suzuki']
    print(motorcycles)
    
    del motorcycles[0]
    print(motorcycles)
    

    运行结果:

    ['honda','yamaha','suzuki']
    ['yamaha','suzuki']
    
  2. 使用方法pop()删除元素

    ​ pop()方法可删除列表末尾的元素,并可以接着使用它的值。列表就像一个栈,而删除列表末尾的元素相当于弹出栈顶的元素。

    motorcycles=['honda','yamaha','suzuki']
    print(motorcycles)
    popped_motorcycle=motorcycles.pop()
    print(motorcycles)
    print(popped_motorcycle)
    

    运行结果:

    ['honda', 'yamaha', 'suzuki']
    ['honda', 'yamaha']
    suzuki
    
  3. 弹出列表中任何位置的处的元素

  • 可以使用pop()来删除列表中任何位置的元素,需要在括号中指定要删除的元素索引。

    motorcycles=['honda','yamaha','suzuki']
    first_owned=motorcycles.pop(2)
    print('The first motorcycles I owned was a '+first_owned.title()+'.')
    

    运行结果:

    The first motorcycles I owned was a Suzuki.
    
  • 使用pop()时,被弹出的元素就不在列表中了。

  • 如果从列表中删除一个元素,且不再以任何方式使用该元素,使用del语句;如果在删除元素后需要继续使用它,则使用方法pop()。

  1. 根据值删除元素

    ​ 使用方法remove()根据元素的值删除元素

    motorcycles=['honda','yamaha','suzuki','ducati']
    print(motorcycles)
    motorcycles.remove('yamaha')
    print(motorcycles)
    

    运行结果:

    ['honda', 'yamaha', 'suzuki', 'ducati']
    ['honda', 'suzuki', 'ducati']
    
  • 方法remove()只删除第一个指定值,如果要删除的值在列表中出现多次,则需要使用循环来判断是否删除了所有这样的值(第七章)。
3.3 组织列表
  • sort():对列表进行永久性排序,即排序后无法恢复原来顺序。

    • sort():按英文字母顺序排序。

    • sort(reverse=True):按英文字母顺序相反的顺序排序

      motorcycles=['honda','yamaha','suzuki','ducati']
      print(motorcycles)
      
      motorcycles.sort()
      print(motorcycles)
      
      motorcycles.sort(reverse=True)
      print(motorcycles)
      

      运行结果:

      ['honda', 'yamaha', 'suzuki', 'ducati']
      ['ducati', 'honda', 'suzuki', 'yamaha']
      ['yamaha', 'suzuki', 'honda', 'ducati']
      
  • sorted():对列表进行临时排序,可以保留列表元素原来的排列顺序,同时以特定的顺序呈现。

    cars = ['bmw', 'audi', 'toyota', 'subaru']  
    print("Here is the original list:") 
    print(cars)
    
    print("\nHere is the sorted list:") 
    print(sorted(cars)) 
    
    print("\nHere is the original list again:") 
    print(cars)
    

    运行结果:

    Here is the original list:
    ['bmw', 'audi', 'toyota', 'subaru']
    
    Here is the sorted list:
    ['audi', 'bmw', 'subaru', 'toyota']
    
    Here is the original list again:
    ['bmw', 'audi', 'toyota', 'subaru']
    
    • sorted(列表名,reverse=True):保留元素原本顺序,按与英文字母顺序相反的顺序排序。
  • 当不是所有元素的值都是小写时,排序的情况要更复杂。

  • reverse():反转列表元素的排序顺序,倒着打印列表。该方法永久性修改列表顺序,但再次调用即可恢复最初顺序。

    cars = ['bmw', 'audi', 'toyota', 'subaru'] 
    print(cars) 
    
    cars.reverse() 
    print(cars)
    

    运行结果:

    ['bmw', 'audi', 'toyota', 'subaru'] 
    ['subaru', 'toyota', 'audi', 'bmw']
    
  • len():确定列表的长度。

    cars = ['bmw', 'audi', 'toyota', 'subaru'] 
    print(cars)
    print(len(cars))
    

    运行结果:

    ['bmw', 'audi', 'toyota', 'subaru']
    4
    
3.4 使用列表时避免索引错误
  • 避免访问的索引溢出,可使用**列表名[-1]**的方式打印列表的最后一个元素。当列表为空时,这种访问方式才会导致错误。
  • 当出现索引错误时,尝试打印出全部列表或使用len()方法打印出列表长度。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值