初识 Python 必看基础知识~ 熬夜爆肝

本文主要梳理一些 Python 入门的基础知识,分享给每一位走在IT路上的侠客~

全文知识梳理来源于《Python编程 从入门到实践(第2版)》

声明:未打广告,豆瓣评分9.3,刷博客时见多个大佬推荐。入手后真心感觉很棒,,,

DIY 1                                                                           


本文知识框图一览

  • 第一章

    • 关于 Python 编程环境的搭建, C站 好多博主都有详细教程就不在过多演示了


注:例中所有    >>> 符号后为输出结果

  • 第二章


第一个代码块,我们熟悉的 Hello world !

 # 例 1

message = 'Hello Python world'
print(message)

# >>> Hello Python world

 

1. 字符串就是一系列字符。在 Python 中,用引号括起的都是字符串,其中的引号可以是单引号也可以是双引号。(注意要用英文引号)例 1 中 'Hello Python world' 便是一个字符串,并赋给了 message 变量。


 # 例 2

name = 'ada lovelace'
print(name.title()) # 方法: .title() 首字母大写
print(name.upper()) # 方法: .upper() 全部大写
print(name.lower()) # 方法: .lower() 全部小写

# >>>
# Ada Lovelace
# ADA LOVELACE
# ada lovelace

2. 方法是 Python 可对数据执行的操作,在例 2 中 name.title() 中,name 后面的句点 (.) 让 Python 对变量 name 执行方法 title() 指定操作。每个方法后面跟着一对圆括号,通常需提供额外的信息来完成其工作。此处函数 title() 不需要额外信息,因此括号内为空。


 # 例 3

first_name = 'ada'
last_name = 'lovelace'
full_name = f'{first_name} {last_name}' # f字符串,f是format的简写;{} 放入变量,显示变量值
print(full_name)

# >>> ada lovelace

message = f'Hello,{full_name.title()}!' # 运用了例2中的方法改变了输出字符的首字母大小写
print(message)

# >>> Hello,Ada Lovelace!

full_name1 = '{} {}'.format(first_name,last_name) # 方法 format()示例
print(full_name1)

# >>> ada lovelace

3. 在字符串中使用变量来输出变量中的值,可使用 f 字符串 同时可以运用方法改变输出格式。 3 中分别演示  f 与 format() 用法。


 # 例 4

# 添加空白
first_name = 'ada'
last_name = 'lovelace'
print(f'\tHello,\n{first_name} {last_name}'.title()) # \t 制表符; \n 换行符

# >>> 
# 	Hello,
# Ada Lovelace

# 删除空白
favorite_language = ' python '
favorite_language1 = favorite_language.rstrip() # .rstrip() 删除尾部空白
favorite_language2 = favorite_language.lstrip() # .lstrip() 删除首部空白
favorite_language3 = favorite_language.strip() # .strip() 删除两端空白
print(favorite_language1)
print(favorite_language2)
print(favorite_language3)

# >>>
# python
#python / 后面这个斜杠表示空格,不然没法具象表现出来
#python

4. 制表符、换行符用来控制输出字符的格式,例 4 中演示几种应用供大家参考。


5. 整数和浮点数

Python 中任意两个数相除时,结果总是浮点数,即便两个数都是整数且能整除。

在其他任何运算中,如果一个操作数是整数,另一个操作数是浮点数,结果依然是浮点数。

6. 注释

可以让你使用自然语言在程序中添加说明,Python 中注释使用 # 号标识。井号后的内容 Python解释器会忽略。

7. Python之禅让你的代码更简约更清晰更优美。下文为有道词典翻译,搬运给大家鉴赏。。。

《 Python 之禅》,作者Tim Peters

美丽总比丑陋好。

显性比隐性好。

简单胜于复杂。

复杂总比复杂好。

平铺总比嵌套好。

稀疏比稠密好。

可读性。

特殊的案例并不特别到可以打破规则。

尽管实用性胜过纯度。

错误不应该悄无声息地过去。

除非显式地沉默。

面对模棱两可,拒绝猜测的诱惑。

应该有一种 — — 最好只有一种 — — 明显的方法。

虽然这种方式一开始可能不明显,除非你是荷兰人。

现在总比没有好。

虽然从来没有比现在更好。

如果实现很难解释,这是一个坏主意。

如果实现很容易解释,这可能是一个好主意。

名称空间是一个非常棒的主意——让我们做更多这样的事情吧!

有兴趣的可尝试神秘代码 import this,自行查看。


  • 第三章


 # 例 5

# 列表
bicycles = ['trek','cannondale','redline','specialized'] # 自行车,分类列表
# 列表变量命名,可以在尾部添加‘s’复数表示。
print(bicycles)
print(bicycles[-1]) # 提取列表中最后一个元素
print(bicycles[1].title()) # 提取列表中第二个元素,并以首字母大写方式输出

# >>>
# ['trek', 'cannondale', 'redline', 'specialized']
# specialized
# Cannondale

1. 列表是由一系列按特定顺序排列的元素组成。

访问列表元素可以使用索引例 5 中演示了如何使用索引访问列表中特定位置的元素,并进行输出。索引 0 开始而不是从 1 开始列表中的元素从左到右排列的索引是 0, 1, 2, 3 ;从右往左排列的索引是 -1, -2, -3, -4;


 # 例 6

# 创建一个列表
motorcycles = ['honda','yamaha','suzuki']

# 向列表中添加元素
motorcycles.append('ducati_1') # 方法 .append() 在列表最后添加元素
print(motorcycles)

# >>> ['honda', 'yamaha', 'suzuki', 'ducati_1']

motorcycles.insert(0,'ducati_2') # 方法 .insert() 指定列表位置添加元素,列表中的每个元素往右移
print(motorcycles)

# >>> ['ducati_2', 'honda', 'yamaha', 'suzuki', 'ducati_1']

# 创建一个空的列表
motorcycles_1 = []
motorcycles_1.append('honda_1') # 使用 .append() 可向空列表中逐个添加元素
motorcycles_1.append('yanaha_1')
print(motorcycles_1)

# >>> ['honda_1', 'yanaha_1']


# 修改列表中的元素
motorcycles[0] = 'ducati' # 修改列表中第一个元素为新的字符串
print(motorcycles)

# >>> ['ducati', 'honda', 'yamaha', 'suzuki', 'ducati_1']


#删除元素
del motorcycles[0] # del语句 删除指定位置元素
print(motorcycles)

# >>> ['honda', 'yamaha', 'suzuki', 'ducati_1']

popped_motorcycles = motorcycles.pop(2) # 方法 .pop('可指定列表元素,默认最后一个元素'),删除指定元素,并弹出赋值给新的变量
print(motorcycles)
print(popped_motorcycles,'!!!')

# >>> ['honda', 'yamaha', 'ducati_1']
# >>> suzuki !!!


too_expensive = 'honda'
motorcycles.remove(too_expensive) # 方法 .remove() 根据指定元素值,删除相应元素。元素值若是重复,只能删除一个,或者使用循环全部删除。
print(motorcycles)
print(f'\n因为***,所以删除{too_expensive}')

# >>> ['yamaha', 'ducati_1']
# >>> 因为XX,所以删除honda

2. 修改、添加、删除元素也就是对列表进行增、删、改等操作。例 6 中详细例举了几种简单的应用。


 # 例 7

# 组织列表
#永久排序
cars = ['bmw','audi','toyota','subaru']
cars.sort() # 方法 .sort()按照首字母顺序永久性修改列表元素序列排序
print(cars)

# >>> ['audi', 'bmw', 'subaru', 'toyota']

cars.sort(reverse=True)# reverse=True 相反顺序排列
print(cars)

# >>> ['toyota', 'subaru', 'bmw', 'audi']

#临时排序
print(sorted(cars)) # 函数sorted() 按首字母顺序临时对列表排序
print(cars) # 打印原始列表

# >>> ['audi', 'bmw', 'subaru', 'toyota']
# >>> ['toyota', 'subaru', 'bmw', 'audi']

#倒着打印列表
cars.reverse() # 方法reverse() 相反顺序排列
print(cars)

# >>> ['audi', 'bmw', 'subaru', 'toyota']

#确定列表长度
print(len(cars)) # len() 确定列表元素个数,长度

# >>> 4

3. 组织列表便是对列表中的元素根据自己的需要进行排序。例 7 中列举了几种组织列表的方法。其中永久排序方法 sort() 会对原始列表进行改变,若是不想改变原始列表可使用临时排序方法 sorted() 。


第四章


 # 例 8

# 遍历整个列表
magicians = ['alice','david','carolina']
for magician in magicians: # for循环 从列表中取出一个元素,使其与变量magician相关联。
    print(magician)

# >>> alice
# >>> david
# >>> carolina

1. 遍历整个列表,运用 for 循环 遍历列表元素,例 8 中从列表 magicians 取出一个元素,并将其与变量 magiian 关联,对列表中所有元素进行了逐个输出。


 # 例 9

#使用range()函数
for value in range(1,5): # 打印数1~5
    print(value)

# >>> 1
# >>> 2
# >>> 3
# >>> 4


for value in range(6): # 打印数0~5
    print(value)

# >>> 0
# >>> 1
# >>> 2
# >>> 3
# >>> 4
# >>> 5


# range()创建数字列表
numbers = list(range(2,11,2)) # 函数list() ,将range()作为参数,输出一个数字列表。
                              # range()第3个参数指定步长,不断增加步长直到或超过终值。
print(numbers)

# >>> [2, 4, 6, 8, 10]


# 列表平方运算
# 形式 1
# 创建列表
squares = []
for value in range(1,11): # 遍历循环输出1~10
    square = value ** 2 # 每个值的平方结果,赋值到新的变量
    squares.append(square) # 将变量中的值通过 方法 .append() 添加到列表最后
print(squares) # 打印列表

# >>> [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

# 形式 2
squares = []
for value in range(1,11):
    squares.append(value ** 2) # 每个值的平方结果,通过 方法 .append() 添加到列表最后
print(squares)

# >>> [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

# 形式 3
squares = [value ** 2 for value in range(1,11)] # 创建列表,并遍历循环输出1~10,输出结果平方,添加到列表
print(squares) # 打印列表

# >>> [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

# 数字列表统计计算
digits = [number_1 for number_1 in range(10)]
print(digits)
print(min(digits)) # 函数 min() 最小值
print(max(digits)) # 函数 max() 最大值
print(sum(digits)) # 函数 sum() 总和

# >>> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# >>> 0
# >>> 9
# >>> 45

2. 创建数值列表

for 循环 配合 函数 range() 生成一系列数值。

range(2,9,2) 第一个参数代表开始数值,第二个参数代表的结束数值,第三个参数代表步长。

>>> 2 4 6 8

以 2 为 起始,以 2 为步长(也就是每次 + 2),一直输出到 8;

然后将遍历的数值逐个存储到空的列表中。例 9 中列举了 3 种代码书写形式,所达到的目的一致。例中最后对列表中的数做了三种统计计算,最小值、最大值、求和。


 # 例 10

# 切片
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[1:3]) # 要输出列表中的第二、三个元素,需指定索引1和3,将返回索引1,2的元素
print(players[:4]) # 如果没有指定第一个索引,将自动从列表开头开始。
print(players[-3:]) # 如果没有指定最后一个索引,将自动输出到列表结尾。

# >>> ['martina', 'michael']
# >>> ['charles', 'martina', 'michael', 'florence']
# >>> ['michael', 'florence', 'eli']


# 遍历切片
for player in players[:3]: # 遍历输出 切片 前三个元素
    print(player.title()) # .title() 首字母大写

# >>> Charles
#     Martina
#     Michael

3. 切片可以指定列表中一段连续的元素,可以是多个一个元素,提取出来进行需要的操作。例 10 中示例了切边的使用方法,及使用 for 循环 对切片后的元素进行一定操作。


 # 例 11

# 复制列表
my_foods = ['pizza', 'falafel', 'carrot cake'] # 创建列表
friend_foods = my_foods[:] # [:] 同时省略起始索引,终止索引。即切片整个列表;
                           # 整个列表副本,赋值到新的变量。即创建了一个列表副本;

print('My favorite foods are:', my_foods)
print("\nMy friend's favorite foods are:", friend_foods)

# >>> My favorite foods are: ['pizza', 'falafel', 'carrot cake']
# >>> My friend's favorite foods are: ['pizza', 'falafel', 'carrot cake']

# 分别向原始列表及列表副本中添加不同元素,验证确保互不影响。
my_foods.append('cannoli') # 列表末尾处添加元素
friend_foods.append('ice crem')

print('\nMy favorite foods are:', my_foods) # 确认为两个不同的互不影响的列表
print("\nMy friend's favorite foods are:", friend_foods)

# >>> My favorite foods are: ['pizza', 'falafel', 'carrot cake', 'cannoli']
# >>> My friend's favorite foods are: ['pizza', 'falafel', 'carrot cake', 'ice crem']

4. 复制列表 可创建一个包含所有列表的切片,作为列表副本。例 11 中做了详细的示例及验证。


 # 例 12

# 定义元组
dimensions = (200, 50) # 使用圆括号来标识元组,不可修改。
dimensions_1 = (3,)    # 严格来说使用 “ , ” 逗号来标识元组,若只定义一个元素,必须添加逗号;
print(dimensions[0])
print(dimensions[:])
print(dimensions_1)

# >>> 200
# >>> (200, 50)
# >>> (3,)


#遍历元组
for dimension in dimensions:
    print(dimension)

# >>> 200
#     50


#元组变量重新赋值
dimensions = (100,) # 虽然不能修改元组,但可以给元组变量重新赋值。
for dimension in dimensions:
    print(dimension)

# >>> 100

5. 元组看起来很像列表,使用 () 标识。列表是不可变的无法对其中的元素进行修改,但是可以对元组变量重新赋值。访问元组的方法与访问列表方法一致,可使用索引、切片


第五章



# 例 13

# if 语句,应用示例
cars = ['audi', 'bmw', 'subaru', 'toyota']
for car in cars: # 遍历列表cars
    if car == 'bmw': # 判断条件是否为'bmw'
        print(car.upper()) # 输出 全部为大写
    else:
        print(car)
# >>> audi
#     BMW
#     subaru
#     toyota


# 条件测试
#检查是否相等
car = 'bmw'
print(car == 'bmw') # 相等返回Ture
# >>> True

print(car == 'audi') # 不等返回False
# >>> False

print(car == 'Bmw') # Python 中检查是否相等区分大小写
# >>> False

print(car.upper() == 'BMW') # 若大小写无关紧要,只检查值,可转换为 大/小 写后再比较
# >>> True

#检查是否不相等
requested_topping = 'mushrooms'
if requested_topping != 'anchovies':
    print("Hold the anchovies!")
# >>> Hold the anchovies!

#使用and 检查多个条件
age_0 = 22
age_1 = 18
age = age_0 >= 21 and age_1 >= 21 # 只要一个条件不成立返回False,两个条件都成立返回True
print(age)
# >>> False

#使用or 检查多个条件
age = age_0 >= 21 or age_1 >= 21 # 只要一个条件成立返回True,两个条件都不成立返回False
print(age)
# >>> True

#使用in 检查特定值是否包含再列表中
requested_toppings = ['mushrooms', 'onions', 'pineapple']
print('mushrooms' in requested_toppings) # 若值在列表中返回True,不在返回False
# >>> True

#使用not in 检查特定值是否包含再列表中
requested_toppings = ['mushrooms', 'onions', 'pineapple']
print('mushrooms' not in requested_toppings) # 若值在列表中返回False,不在返回True
# >>> False

1. if 语句让你能够检查一系列的条件,并据此决定采取何种措施。核心是一个值为 TrueFalse 的表达式,称之为条件测试。以此来决定是否执行 if 语句中的代码,True 执行,False 忽略。例 13 中还列举了一些条件测试的方法。


扩展应用:                                          

 # 例 14

#使用 if语局处理列表
#检查特殊元素
requested_toppings = ['mushrooms', 'green peppers', 'extra cheese']

for requested_topping in requested_toppings: # 遍历列表
    if requested_topping == 'green peppers': # 判断元素为此
        print('Sorry, we are out of green peppers right now.')
    else:
        print(f'Adding {requested_topping}.')

# >>> Adding mushrooms.
#     Sorry, we are out of green peppers right now.
#     Adding extra cheese.


#确定列表不为空
requested_toppings_1s = []
if requested_toppings_1s: # 判断Python中列表至少包含一个元素为True,列表为空时为False
    for requested_toppings_1 in requested_toppings_1s:
        print(f'Adding {requested_toppings_1}.')
    print('Finished making your pizza!')
else:
    print('\nAre you sure you want a plain pizza?')

# >>> Are you sure you want a plain pizza?


#使用多个列表
available_toppings = ['mushrooms', 'green peppers', 'extra cheese', 'olives', 'pepperoni', 'pineapple']
requested_toppings = ['mushrooms', 'french fries', 'extra cheese']

for requested_topping in requested_toppings:
    if requested_topping in available_toppings: # 判断遍历列表requested_toppings输出的元素是否存在与列表available_toppings中
        print(f'\nAdding {requested_topping}.')
    else:
        print(f"Sorry, we don't have {requested_topping}.")

# >>> Adding mushrooms.
#     Sorry, we don't have french fries.

#     Adding extra cheese.

 感谢,每一位认真阅读到这里的 少侠

 

分享知识让人身心愉悦,同时此篇文章若是能帮到你,那我更是开心了,哈哈哈。。。

基础篇后续应该还会有篇文章,觉得还不错的记得 一键三联啊~

不迷路~


 

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清汉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值