Python基础快速入门

发布时间:2023年12月20日


1.基础用法


字符串连接

print("hello" + " world" + "!")
输出
hello world!

单双引号转义 ’

print("he saild 'good!'")
print('he saild "good!"')
print("he said \"Let\'s go\"")
输出
he saild 'good!'
he saild "good!"
he said "Let's go"

换行 \n

print("hello!\nworld")
输出
hello!
world

三引号跨行字符串 ‘’’ ‘’’ “”" “”" 可以用三个单引号,也可以是三个双引号

print('''a
b
c
d
黄河之水天上来''')

输出
a
b
c
d
黄河之水天上来

1.1 python变量

greet = "你好,吃了么, "
greet_chinese = greet
greet_english = "you what's up, "
greet = greet_english;
print(greet + "张三")
print(greet + "李四")
print(greet_chinese + "王五")
输出
you what's up, 张三
you what's up, 李四
你好,吃了么, 王五

1.2 python命名规则

1.下划线命名法

? 1.字母全部小写

? 2.不同单词用下划线分隔 user_age user_gender

2.驼峰命名法

? 单词用首字母大写分隔 UserAge UserGender

image-20231119142310675

1.3 python 数学运算

print(1+2+3/4*5)  //6.75   3/4=0.75
x**2 ==  x的平方


#求 -x2 - 2x + 3 =0 的根
a = -1
b = -2
c = 3
print((-b + math.sqrt(b ** 2 - 4 * a * c)) / (2 * a))
print((-b - math.sqrt(b ** 2 - 4 * a * c)) / (2 * a))
输出
-3.0
1.0

1.4 python数据类型

字符串 str

整数 int 和 浮点数 float

布尔类型 bool

空值类型 NoneType

#对字符串求长度
s = "Hello world!"
print(len(s))

#通过索引获取单个字符
print(s[1])
print(len(s) -1)

# 布尔类型
b1 = True
b2 = False

# 控制类型
n = None

#type函数
print(type(s))
print(type(b1))
print(type(b2))
print(type(n))

输出
12
e
11
<class 'str'>
<class 'bool'>
<class 'bool'>
<class 'NoneType'>

1.5 python input函数

# BMI = 体重/(身高 ** 2)
user_weight = float(input("请输入您的体重 (单位:kg): "))  #将其转换为float型   input返回的值是str类型
user_height = float(input("请输入您的身高 (单位:m): "))
user_BMI = user_weight / (user_height) ** 2
print("您的BMI值为:" + str(user_BMI))   #将其转化为 str字符串类型 (输出的时候必须为str类型)

输出
请输入您的体重 (单位:kg): 70
请输入您的身高 (单位:m): 1.8
您的BMI值为:21.604938271604937

1.6 python 条件语句

mood_index = int(input("对象今天的心情指数是:"))
if mood_index >= 60:
    print("恭喜,今晚可以打游戏")
else:
    print("为了自个小命,还是别打了。")
    
输出
对象今天的心情指数是:70
恭喜,今晚可以打游戏

1.7 python嵌套/多条件判断

# BMI = 体重/(身高 ** 2)
user_weight = float(input("请输入您的体重 (单位:kg): "))
user_height = float(input("请输入您的身高 (单位:m): "))
user_BMI = user_weight / (user_height) ** 2
print("您的BMI值为:" + str(user_BMI))

#偏瘦 user_BMI <= 18.5
#正常 18.5< user_BMI <=25
#偏胖 25< user_BMI <=30
#肥胖  user_BMI >= 30

if user_BMI <= float(18.5):
    print("您偏瘦")
elif 18.5< user_BMI <=25:
    print("正常")
elif 25< user_BMI <=30:
    print("偏胖")
else:
    print("肥胖")
    
 输出
请输入您的体重 (单位:kg): 70
请输入您的身高 (单位:m): 1.8
您的BMI值为:21.604938271604937
正常

1.8 python 逻辑运算

? and 与 or 或 not 非

x > 5 and x< 10 x>5 or x<10 not x >5

运算优先级 not > and > or

1.9 python 列表

shopping_list = ["键盘","鼠标"]
shopping_list.append("屏幕")  #往列表中追加
shopping_list.remove("鼠标")  #将某值从列表移除
print(shopping_list)

price = [799,1024,200,800]
max_price = max(price)
min_price = min(price)  #最小值
sorted_price = sorted(price) #排序
print(max_price)
print(min_price)
print(sorted_price)

输出
['键盘', '屏幕']
1024
200
[200, 799, 800, 1024]

2.0 python 字典

字典用于储存 键值对 key : value

contacts = {“小明”: “1370000000”,

? “小花”: “1370000001”}

元组 用圆括号 tuple = (“键盘”,“键帽”)

列表 用 方括号 list = [“键盘”,“键帽”]

slang_dict = {"外国文学":"《哈姆雷特》",
              "外国文化":"百科全书派"}
slang_dict["中国文学"] = "尤三姐"   #将其加入到收录语种
slang_dict["中国文化"] = "《本草纲目》"
slang_dict["世界历史"] = "诺曼底登陆"

query = input("请输入您想要查询的流星雨:")
if query in slang_dict:
    print("您查询的" + query + "含义如下")
    print(slang_dict[query])
else:
    print("您查询的流星语暂未收录。")
    print("当前本词典收录语为:" + str(len(slang_dict)))
输出
请输入您想要查询的流星雨:世界历史
您查询的世界历史含义如下
诺曼底登陆

2.1 python for循环

for 变量名 in 可迭代对象

for i in range(5,10) range(5,10) 表示从5-9的数

range(起始值,结束值,步长)

total = 0;
for i in range(1,101):
    total = total + i
print(total)
输出
5050

image-20231119154327796

image-20231119154340069

2.2 python while循环

image-20231119154621905

2.3 python格式化字符串

format 方法

year = "2023年"
name= "李明"
message_content = """
律回春渐,新元迎启,
金{receiver_year}贺岁,欢乐瑞祥。
给{receiver_name}及家人拜年啦!
""".format(receiver_year=year,receiver_name=name)
print(message_content)

输出
律回春渐,新元迎启,
金2023年贺岁,欢乐瑞祥。
给李明及家人拜年啦!

或者  f - 字符串
year = "2023年"
name= "李明"
message_content = f"""
律回春渐,新元迎启,
金{year}贺岁,欢乐瑞祥。
给{name}及家人拜年啦!
"""
print(message_content)

输出
律回春渐,新元迎启,
金2023年贺岁,欢乐瑞祥。
给李明及家人拜年啦!

gpa_dict = {"小明":3.251,"小花":3.869,"小李":2.683}
for name,gpa in gpa_dict.items():
    print("{0} 你好,你的当前绩点为:{1:.2f}".format(name,gpa))  #:.2f : 用来保证输出几位小数
  
输出
小明 你好,你的当前绩点为:3.25
小花 你好,你的当前绩点为:3.87
小李 你好,你的当前绩点为:2.68

2.4 python 函数

def 名字():

名字() 来调用函数

或者 def 名字(参数1,参数2)

def calculate_BMI(weight,height):
    BMI = weight / height ** 2
    if BMI <= 18.5:
        category = "偏瘦"
    elif BMI <= 25:
        category = "正常"
    elif BMI <= 30:
        category = "肥胖"
    else:
        category = "肥胖"
    print(f"您的BMI分类为:{category}")
    return  BMI

result = calculate_BMI(70,1.8)
print(result)

输出
您的BMI分类为:正常
21.604938271604937


2.5 python 引入模块

引入模块的方法

  • import 语句

? import math

  • from … import … 语句

from statistics import median,mean

print (median([19,-5,36])) //不需要加statistics前缀了

print (mean([19,-5,36]))

  • form … import * //把模块里面所有内容都会进行引入(不推荐使用)

    print (median([19,-5,36])) //不需要加statistics前缀了

    print (mean([19,-5,36]))

pypi.org 网站可以对第三库进行搜索, 在终端 输入 pip install 后面跟上库的名字 进行安装

2.6 python 创建类

class 名字:

? #接下来是一些定义类的代码

class CuteCat:     #创建 猫类     
    def __init__(self,cat_name,cat_age,cat_color):  #定义属性  self(第一个参数),用于表示对象自身,约定俗成为self
        self.name = cat_name
        self.age = cat_age
        self.color = cat_color
 
cat1 = CuteCat("Jojo",5,"blue")   #创建对象
print(f"小猫{cat1.name}的年龄是:{cat1.age}岁,花色是:{cat1.color}")

输出:
小猫Jojo的年龄是:5岁,花色是:blue


class CuteCat:     #定义类 
    def __init__(self,cat_name,cat_age,cat_color):  #定义属性 
        self.name = cat_name
        self.age = cat_age
        self.color = cat_color
    def speak(self):    #定义方法
        print("喵" * self.age)
    def think(self,content):
        print(f"小猫{self.name}在思考{content}...")


cat1 = CuteCat("Jojo",5,"blue")
print(f"小猫{cat1.name}的年龄是:{cat1.age}岁,花色是:{cat1.color}")
cat1.speak()
cat1.think("现在去抓沙发哈斯斯纸箱")
输出
小猫Jojo的年龄是:5岁,花色是:blue
喵喵喵喵喵
小猫Jojo在思考现在去抓沙发哈斯斯纸箱...

练习

#定义一个学生类
# 要求:
# 1.属性包括学生姓名、学号,以及语数英三科的成绩
# 2.能够设置学生某科的成绩
# 3.能够打印出该学生的所有科目成绩
class Student:
    def __init__(self,stu_name,stu_id):
        self.stu_name = stu_name
        self.stu_id = stu_id
        self.grades = {"语文": 0,"数学": 0,"英语": 0}
    def set_grade(self,course,grade):   #设置学生某科的成绩
        if course in self.grades:
            self.grades[course] = grade
    def print_Allgrades(self):  #打印出该学生的所有科目成绩
        print(f"学生{self.stu_name}(学号:{self.stu_id})出成绩为;")
        for course in self.grades:
            print(f"{course}:{self.grades[course]}分")



chen = Student("小陈","1006")
zeng = Student("小增","1008")
zeng.set_grade("数学",95)
zeng.set_grade("英语",90)

zeng.print_Allgrades() #打印出该学生的所有科目成绩

print(chen.stu_name)
print(zeng.stu_id)
print(zeng.grades)

学生小增(学号:1008)出成绩为;
语文:0分
数学:95分
英语:90分

小陈
1008
{'语文': 0, '数学': 95, '英语': 90}

2.7 python 类继承

calss Mammal:

class Human(Mammal): #括号里写上父类的名字 这样就继承了父类

# 类继承练习:人力系统
#   - 员工分为两类:全职员工  FullTimeEmployee、兼职员工  PartTimeEmployee。
#   - 全职和兼职都有:“姓名 name”、“工号 id”属性,
#         都具备“打印信息 print_info”(打印姓名、工号)方法。
#   - 全职有“月薪 monthly_salary”属性
#         兼职有“日薪 daily_salary”属性、“每月工作天数 work_days”的属性。
#   - 全职和兼职都有“计算月薪 calculate_monthly_pay”的方法,但具体计算过程不一样。

class Employee:
    def __init__(self,name,id):
        self.name = name
        self.id = id
    def print_info(self):
        print(f"姓名:{self.name}   编号:{self.id}")

class FullTimeEmployee(Employee):  #继承Employee类   #全职员工的类
    def __init__(self,name,id,monthly_salary):
        super().__init__(name,id)
        self.monthly_salary = monthly_salary
    def calculate_monthly_pay(self):
        return self.monthly_salary
class PartTimeEmployee(Employee):  #兼职员工的类
    def __init__(self,name,id,daily_salary,work_days):
        super().__init__(name,id)
        self.daily_salary=daily_salary
        self.work_days=work_days
    def calculate_monthly_pay(self):
        return self.daily_salary*self.work_days

zhangsan = FullTimeEmployee("张三","1001",6000)
lisi = PartTimeEmployee("李四","1002",300,15)
zhangsan.print_info()
lisi.print_info()
print(zhangsan.calculate_monthly_pay())
print(lisi.calculate_monthly_pay())


输出
姓名:张三   编号:1001
姓名:李四   编号:1002
6000
4500


2.8 python文件操作

open(“路径”,模式,encoding=“utf-8”)

模式: 分为 r:只读模式, w:只写模式 r+: 可读可写入 a: 在后面追加

encoding :编码方式

read(): 返回全部文件内容的字符串 read(10): 读取前10行

readline():会读一行文件内容,并打印

readlines(): 会读全部文件内容,并把每行作为列表元素返回

close() 关闭文件,释放资源

with open(“./data.txt”) as f #文件执行完毕,会自动关闭文件

?

f = open("./data.txt","r",encoding="utf-8")
content = f.read()
print(content)
f.close()

f = open("./data.txt","r",encoding="utf-8")
lines = f.readlines()
for line in lines:
    print(line)

with open("./data.txt","r",encoding="utf-8") as f:
    print(f.readline())
    print(f.readline())

 输出:
金融界2023年11月17日消息,据国家知识产权局公告,腾讯科技(深圳)有限公司取得一项名为“文本处理方法、装置、电子设备、及计算机可读存储介质”,公开号CN116340467B,专利申请日期为2023年。

专利摘要显示,本申请提供了一种文本处理方法、装置、电子设备及计算机可读存储介质;

采集日期:2023年11月19日

2.9 python 异常处理

image-20231119212404368

image-20231119212411041

image-20231119212440268

3.0 python测试

为了测试程序中 是否有bug

assert:中文意思为 断言 ,

? assert len(“Hi”) == 2

	assert  1 + 2 > 6,会出现AssertionError,  此时程序就会中止,后面的代码就不执行了

**unittest(常用):**可以帮我们自动找出和运行所有测试用例,一次性展示所有测试结果,并且给出未通过测试的详情

image-20231119213924236


Python技术资源分享

小编是一名Python开发工程师,自己整理了一套 【最新的Python系统学习教程】,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。

保存图片微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

如果你是准备学习Python或者正在学习,下面这些你应该能用得上:

1、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

2、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

在这里插入图片描述

3、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

img

4、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

5、清华编程大佬出品《漫画看学Python》

用通俗易懂的漫画,来教你学习Python,让你更容易记住,并且不会枯燥乏味。

在这里插入图片描述

6、Python副业兼职与全职路线

在这里插入图片描述
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

👉CSDN大礼包:《Python入门资料&实战源码&安装工具】免费领取安全链接,放心点击

文章来源:https://blog.csdn.net/2301_80239908/article/details/135101915
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。