当前位置: 首页 > news >正文

基于Python的数据科学系列(1):Python基础

引言

        欢迎来到“Python for Data Science”系列的第一篇文章。在本系列中,我们将带领读者熟悉Python编程语言的基础知识,并逐步介绍数据科学中的常用库和工具。在开始学习机器学习之前,掌握Python的基础是至关重要的。如果你对更高级的内容感兴趣,可以查看我的另一个项目“Machine Learning”。

        在本篇文章中,我们将重点介绍Python的基本概念,包括变量、数据类型、打印方法、布尔值、算术运算、类型转换、比较运算符、条件语句和循环。

1. Python简介

阅读材料

  • Python官方教程

基础知识

变量赋值

        变量在Python中是动态类型的。通常,变量名以小写字母开头。

# 变量是动态类型的
x = 3 # 整数
x = 3.0 # 浮点数
x = True # 布尔值
x = 'hello' # 字符串a, b = 1, 2  # 多重赋值
PI   = 3.14  # 常量使用全大写字母
# and = 1  # Python关键字如 "and", "or", "class", "True", "False" 不能作为变量名使用
打印方法

        Python有多种打印变量的方法。

print("1: X with newline: \n", x)  # 逗号用于变量,\n表示换行
print("2: X with .format: {}".format(x))  # .format 用于在特定位置插入变量
print(f"3: X using f-string with {x}")  # f-string,防止忘记写逗号和.format
print("4: User", "Desktop", "Home", sep="/") # 指定分隔符
print("5: Hello", end='')  # 禁用换行符
print("6: World")
print(r"7: \n is used for newline")  # 使用r-string表示原始字符串,常用于正则表达式
print("8: \"Hi")  # 使用 \ 转义 "
print("9: C style printing = %f" % 1.0)  # C风格;%s 表示字符串,%f 表示浮点数,%d 表示整数
print("10: Casting with c style:  value1= %.2f. value2 = %d" % (3.1415, 1.5))
布尔值
# 布尔值,可以使用布尔值或整数
a  = True
a2 = 10  # 任何非0的数字都视为True
b  = False
b2 = 0
print(type(b))
print(type(b2))
print("1: Is a boolean: ", type(a) is bool)
print("2: Is a2 int: ", isinstance(a2, int))print("4: True and False: ", True and False)
print("5: True or False: ", True or False)
print("6: Not False: ", not False)
print("7: Not 0: ", not 0)
算术运算
print("1: 3+3     -->", 3 + 3)
print("2: 3/3     -->", 3 / 3)
print("3: 4 // 3  -->", 4 // 3)  # 整数除法
print("4: 4 mod 3 -->", 4 % 3)  # 取模运算
print("5: 4 ^ 2   -->", 4 ** 2) # 幂运算import math
print("6: With math. ", math.cos(2 * math.pi))
类型之间的运算
# float + int = float
# int + int = int
# int/float + string = error
print("1: float + int ", type(float(3) + int(3)))
print("2: int + int   ", type(int(3) + int(3)))
# print("string + int", type(str(3) + int(3))) # 错误

=== 任务 1 ===

  1. 声明两个值为 "3" 和 "4" 的字符串。将它们转换为整数后执行加法运算。
  2. 声明一个变量 x = 10,然后打印一条 f-string 显示 "my variable x = 10",其中 10 来自于变量 x。
  3. 计算 (10 mod 4 / 2) 并转换为整数。
  4. 使用 input() 从用户获取输入,然后打印输入的类型。 提示: 获取用户输入
  5. 声明三个字符串:"Chaky", "John", "Tom",并将它们连接成 "Chaky, John, Tom"。
任务 1 的代码示例
# 任务1.1
str1 = "3"
str2 = "4"
int1 = int(str1)
int2 = int(str2)
result = int1 + int2
print("任务1.1结果:", result)# 任务1.2
x = 10
print(f"任务1.2结果: my variable x = {x}")# 任务1.3
calc_result = int(10 % 4 / 2)
print("任务1.3结果:", calc_result)# 任务1.4
user_input = input("请输入一个数字: ")
print("任务1.4结果:", type(user_input))# 任务1.5
str1 = "Chaky"
str2 = "John"
str3 = "Tom"
concatenated_str = str1 + ", " + str2 + ", " + str3
print("任务1.5结果:", concatenated_str)
比较运算符
if 语句
statement1 = False
statement2 = False
statement3 = True# 使用缩进,这可能是Python中一个烦人的方面
if statement1:if statement3:print("1: statement1 is True")
elif statement2:print("2: statement2 is True")
else:print("3: statement1 and statement2 are False")print("4: Still inside the else block!!")print("5: Now outside the if block!")
while 语句
i = 0
while i < 5:print("Inside while:", i)i = i + 1  # 尝试 i+=1
print("2: done")
比较运算符
2 > 1, 2 < 1, 2 > 2, 2 < 2, 2 >= 2, 2 <= 2, [1,2] == [1,2], not True

=== 任务 2 ===

  1. 使用 input() 从用户获取输入。如果数字小于 5,打印 "less than"。否则,打印 "higher than"。 注意:input() 总是返回字符串。
  2. 编写一个简单的数字猜谜游戏。程序生成一个随机整数,然后接受用户输入的整数。用户输入后,系统输出三种可能状态之一,指示数字是高于、低于或等于目标整数。如果不正确,程序将继续要求用户输入。可以自行假设任何未明确说明的内容。
任务 2 的代码示例
# 任务2.1
user_input = int(input("请输入一个数字: "))
if user_input < 5:print("less than")
else:print("higher than")# 任务2.2
import randomtarget_number = random.randint(1, 100)
print("猜猜看,我选了一个1到100之间的数字。")while True:user_guess = int(input("请输入你的猜测: "))if user_guess < target_number:print("higher than")elif user_guess > target_number:print("lower than")else:print("恭喜你,猜对了!")break

结语

        通过这篇文章,我们初步介绍了Python编程的基本概念和操作,包括变量赋值、各种打印方法、布尔值、算术运算、类型之间的运算、条件语句和循环。我们还提供了一些练习任务,以帮助大家巩固所学的知识。通过这些基础知识的学习,读者将能够熟练掌握Python编程,为进一步学习数据科学和机器学习打下坚实的基础。

        在接下来的文章中,我们将深入探讨列表、元组和字典等数据结构,并介绍函数、类和异常处理等高级特性。希望大家通过实践任务逐步提高编程技能,逐步迈向数据科学的世界。谢谢阅读!

如果你觉得这篇博文对你有帮助,请点赞、收藏、关注我,并且可以打赏支持我!

欢迎关注我的后续博文,我将分享更多关于人工智能、自然语言处理和计算机视觉的精彩内容。

谢谢大家的支持!

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Android HandlerThread泄漏FD问题
  • 学习笔记五:在k8s中安装EFK组件
  • Java多商户新零售超市外卖商品系统
  • Project Euler_Problem 587_Concave Triangle (背包问题)
  • 力扣399.除法求值
  • Python 日志处理分析简介
  • AD交互式布局以及快捷键的设置
  • 内网穿透原理,免费内网穿透(简单使用),公网主动访问内网。
  • 【Python机器学习】利用AdaBoost元算法提高分类性能——在数据集上应用AdaBoost
  • 【EI会议征稿通知】第六届光电科学与材料国际学术会议 (ICOSM 2024)
  • Unity补完计划 之Tilemap
  • 白骑士的Matlab教学基础篇 1.2 MATLAB基础语法
  • 常见VPS服务器附加组件一览
  • 牛客JS题(二十五)Symbol
  • 【OpenCV C++20 学习笔记】给图片加边框-copyMakeBorder
  • [deviceone开发]-do_Webview的基本示例
  • 【划重点】MySQL技术内幕:InnoDB存储引擎
  • eclipse(luna)创建web工程
  • EOS是什么
  • Javascript编码规范
  • js对象的深浅拷贝
  • Sequelize 中文文档 v4 - Getting started - 入门
  • vue的全局变量和全局拦截请求器
  • 设计模式(12)迭代器模式(讲解+应用)
  • 验证码识别技术——15分钟带你突破各种复杂不定长验证码
  • #!/usr/bin/python与#!/usr/bin/env python的区别
  • #### golang中【堆】的使用及底层 ####
  • #Linux杂记--将Python3的源码编译为.so文件方法与Linux环境下的交叉编译方法
  • (1)(1.13) SiK无线电高级配置(五)
  • (4)事件处理——(7)简单事件(Simple events)
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (不用互三)AI绘画:科技赋能艺术的崭新时代
  • (附源码)ssm基于web技术的医务志愿者管理系统 毕业设计 100910
  • (机器学习-深度学习快速入门)第三章机器学习-第二节:机器学习模型之线性回归
  • (一)appium-desktop定位元素原理
  • (一)Docker基本介绍
  • .md即markdown文件的基本常用编写语法
  • .net core 6 集成 elasticsearch 并 使用分词器
  • .NET Core中的时区转换问题
  • .NetCore+vue3上传图片 Multipart body length limit 16384 exceeded.
  • .NET技术成长路线架构图
  • @Autowired多个相同类型bean装配问题
  • @converter 只能用mysql吗_python-MySQLConverter对象没有mysql-connector属性’...
  • @hook扩展分析
  • @Transient注解
  • [ vulhub漏洞复现篇 ] struts2远程代码执行漏洞 S2-005 (CVE-2010-1870)
  • [000-01-011].第2节:持久层方案的对比
  • [001-03-007].第07节:Redis中的管道
  • [Android Pro] AndroidX重构和映射
  • [Android]将私钥(.pk8)和公钥证书(.pem/.crt)合并成一个PKCS#12格式的密钥库文件
  • [Ariticle] 厚黑之道 一 小狐狸听故事
  • [C#]winform利用seetaface6实现C#人脸检测活体检测口罩检测年龄预测性别判断眼睛状态检测
  • [C++从入门到精通] 14.虚函数、纯虚函数和虚析构(virtual)
  • [CakePHP] 在Controller中使用Helper
  • [CSS] 点击事件触发的动画