Python基础

Python编程从入门到实践

2022年研一寒假与小丁同学一起学习了[美]埃里克·马瑟斯著写,袁国忠翻译的《Python编程从入门到实践》,想记录一下。这篇文章适合阅读完此书后,一些知识比较混乱的时候看看,后期会出思维导图版。


第二章 变量和简单数据类型

一 变量赋值与打印
name = '小丁同学'
print("你好"+" 这是一行代码")
print("我喜欢"+name) 	# name为变量  print('我喜欢{name}')
like = f "我喜欢{name}"		#变量 = f"{变量}"

二 大小写(不改变原来的):
 .title()		首字母大写
 .upper()		全大写
 .lower()		全小写

三 删除空白:
 .lstrip().rstrip().strip()		两边
			

第三章 列表简介

一 方法与函数在定义上的区别
名.abc()		方法
abc()			函数

二 定义列表:
1. 名称s =  ['', '', ······]		# 列表名称尽量用复数
2. 名称s[i]	# i从0开始

三 在列表上进行 修改、添加、删除:
3. 名称[i] = ''		# 修改指定位置元素
4. 名称.append('')		# 尾加
5. 名称.insert(i,'')	# 按位加
6. del 名称[i]			# 按位删
7. 名称.pop()			# 弹出顶端元素
8. 名称.pop(i)			# 按位弹    (名称 = 名称.pop(i)弹出并保留)
9. 名称.remove('')		# 按值删    (只删除一个特定值)
 
四 对列表排序:
1..sort()			# 永按序排			(不能放在print中(一个过程))
2..sort(reverse = True)# 永按序反排		(不能放在print中(一个过程))
3. sorted()			# 暂时按序排
4. sorted(, reverse = True)# 暂时按序反排
5..reverse()		# 颠倒列表(永久)	(不能放到print中,2次变回原样)
6. len()				# 确定长度(记数从1开始)	len(字符串)、len('  ') len(6)报错

第四章 操作列表

一 傻瓜式遍历
for 遍历整个列表:
for food in foods:
	print(food)			# pyhton解释器根据缩进来读代码与垂直空行无关

二 数值列表:
函数range(i,j,k)			#i始,j终(截止到j-1),k步长。 无i从0起,无j到终点,-1为最后一个
min()
max()
sum()
list(range(1,6)-转成列表
squars=[value**2 for value in range(1,11)]		#列表解析

三 截取列表部分:
1. players[0:3]			  	#切片 [0:] 到末尾,  [-3:] 后三
2. 新名=[:]					#复制列表
3. 新名=#共同指向一个列表    名:首地址

四 改变不了的列表——元组:
players = ('','')				#不可变,但可重新赋值
	

第五章 if语句

一 等号的使用方法
'='赋值		'=='相等运算符		'!='不等运算符

二 优先级
not > and > or			#非>与>或	可多个并列使用

三 条件的新方式
检查特定值是否包含在列表:  '特定值' in 列表	#不在not inif条件(一个if下输出一个):
	if条件:	
	else:

	if条件:
	elif条件:
	else:

	if条件:
	if条件:

第六章 字典

一 定义字典
aline_0 = {'键'='值', '键'='值'}		#可跨行定义字典

二 对字典进行访问以及修改
1. 访问:		aline_0['键']						#通过键获取相对应的值
2. 添加键值对:	aline_0['键']='值'					#按序往里添加
3. 修改值:		aline_0['键']=''					#按定键进行修改
4.:			del aline_0['键']
			aline_0.get('键''空时返回的消息')	#用方法get访问空键不报错
			
三 寻找独一无二的元素
让Python找出列表中独一无二的元素,并使用这些元素创建一个集合: 函数set()		#无序、独一无二
			
四 遍历
1. 键值对.items():		for key, value in user_0.items():
2..keys:			for key in user_0.keys():
3..value:			for value in user_0.value():

 
五 嵌套
列表嵌套字典			.append() 		#压入列表   for aline_number in range(30)  循环30次
字典嵌列表		#将值定义为列表
字典嵌字典		#将值定以为字典

注意: 键不可用列表(可变),可用元组(不可变)


第七章 用户输入和while循环

一 输出函数input()
作用: 提示用户输入一些文本,再将这些文本呈现给用户。举例如下:
message = input('提示词')
print(message)

二 函数int()
作用: input()返回的是一个字符串类型文本,有时需要将返回的文本用作比较的数据,int()可将字符串类型转换成整型。

三 求模运算符%
作用: 两数相除返回余数
4 % 3		返回1while循环
作用: for循环适合傻瓜式循环所有,而while可以有条件的循环,可以控制结束。
格式:
while 条件:
	执行
	
五 死循环
while True

六 退出的循环条件
1. 使用标志退出循环:
作用: 可以在循环前定义一个标志(一遍将True赋给某个变量)作为循环条件,通过改变这个标志进而控制循环结束。
eg:
active = True
while active:
	message = input(prompt)
	
	if message == 'quit':
		active = False
	else:
		print(message)

2.breakcontinue: break是跳出并结束本层循环,continue是跳出本次循环,并继续下一次循环。

注:空列表可做循环结束条件。
	

第八章 函数

一 定义函数:
def 函数名(形参):
	函数体

二 调用函数:
函数名(实参)

三 实参与形参: 实参与形参的关系有点像变量赋值,将实参赋给变量形参,再通过函数体进行一些列操作.当然,函数体内的变量为形参。

四 四种传递实参方式: 函数调用时,Python
1. 位置实参: 实参与形参基于位置关联(顺序很重要)def describe_pet(animal_type, pet_name):
	print(f"My {animal_type}'s name is {pet_name.title()}.")
describe_pet('hamster', 'harry')

2. 关键字实参:传递给函数的名称值对,顺序无关紧要。
 def describe_pet(animal_type, pet_name):
	print(f"My {animal_type}'s name is {pet_name.title()}.")
describe_pet(pet_name='harry', animal_type='hamster')

3. 默认值: 编写函数时,可给每个形参指定默认值。在调用函数中给形参提供实参时,Python将使用指定的实参值,否则,使用形参的默认值,具有单个默认值一般可以放到形参中最后一个。

4. 位置实参、关键字实参、默认值可以混合使用。

五 返回值
函数可以返回任何类型的值,包括列表和字典等教复杂的数据结构。

六 函数可以直传递列表,并直接修改列表。若不想原列表被修改,可以用切片([:])传递复制版本。

七 传递任意数量的实参
1. 将形参定义为(*名字),Python创建一个空元祖。可以接收任意数量的实参,并存储到这个元组中。
2. 将形参定义为(**名字),Python创建一个空字典,可以接收任意数量的字典形式的实参,并存储到这个字典中。
注:Python运行程序是一行一行运行,而不是一个实参一个实参的运行函数体。

八 将函数存储在模块中: 可以将函数封装到一个文件中(例如:pizza.py)

九 导入函数:
1. 导入整个模块:
import pizza				# from pizza import*
pizza.make_pizza(实参)
2. 导入特定函数:
from module_name import 函数1,函数2,函数3......
3.as给模块指定别名
import pizza as p

第九章 类

一 创建Dog类
class Dog:										# 类的首字母名字大写
	'''说明此类干什么'''
	def __init__(self, name, age):				# 类中函数成为方法。 self是与实例建立起联系。 初始化约定俗成格式。
		'''初始化说明'''
	self.name = name 							# 属性。将传入的参数赋予给实例。 可以通过实例直接访问:实例.name。 可以直接给属性默认值:self.name = 'Li'
	self.age = age

	def sit(self):
		'''方法说明'''

二 访问属性以及调用
实例.name
my_dog = Dog('Willie', 6)						# 调用类Dog,传入两个参数,并赋给my_dog
my_dog.name										# 可类比函数
my_dog.sit()

三 修改属性的值
1. 直接: 实例.name = 'Wang'
2. 通过方法修改属性的值: 
	def updata_odometer(self, mileage)'''方法说明'''
		self.odometer_reading = mileage
my_new_car.updata_odometer(23)
3. 通过方法进行递增
		self.odometer_reading += mileage
		
四 继承(父亲必须在当前文件中)
	def __init__(self.make,model,year):
		super().__init__(make, model, year):
			新属性

五 重写父类的方法(即父类与子类方法同名时,优先子类)

六 可以在类中调用另外一个类

七 导入类

八 标准库
			

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Xianhao Wei

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

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

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

打赏作者

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

抵扣说明:

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

余额充值