个人 Python学习记录(一)

本文档为Python初学者提供了一个良好的起点,介绍了Python的基础语法、变量、数据类型、运算符及包管理等内容,并对比了与Java的异同。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

个人背景

学习目的   

Task01

Python的注释

Python的运算符

 变量和赋值

变量

Python的包

总结


个人背景

目前从事Java开发工作,想在闲余时间扩充下自己,学习契机应该是在去年11月份参加的华为举办的晟腾开发者大会,说是开发者大会但是其实~~是介绍产品的,而且没想到的是碰见了盛产学生的西安,当时到场的1/3都是在校生,一部分是来看产品的,还有一部分像我一样懵逼的...

学习目的   

  1. 一直想提升自己学习能力,再找份副技术去学习
  2. 想了解深度学习人工智能方向
  3. 对python挺感兴趣的,经常跟朋友聊,听他说跟java 的对比
  4. 想了解下python有什么优势,以及为什么说入门容易,深入难

目前在阿里的训练营打卡学习就记录下吧

Task01

先从了解Python的基础知识开始,看起来Python 像弱类型语言,因为对语句和写法没有很细致的要求和检查,像作用域使用缩进来进行区分,总体上减少了很多不必要的代码

# 基本的输出控制台语句
print("打印到控制台")

Python的注释

python注释分为2种多行(也叫区间注释)和单行注释

# 这是单行注释 
##  这也是单行注释
 print("hello,python") # 你好,Python 

# '''
三个单引号,表多行注释
'''
"""
三个双引号,也可表示多行注释
"""

当然多行注释也可以在一行显示,不过还是多行显示美观

Python的运算符

运算符大致分为五种,算术运算符、比较运算符、逻辑运算符、位运算符、其他运算符,计算的时候需要注意运算法的运算顺序

 算术运算符

  

# TODO 2021.2.13  后续更新

相比于Java 多了整除和幂 猜测是为了更精确的运算,不知道是否常用后续再进行验证 更新 

比较运算符 

逻辑运算符 

 

位运算符

 其他运算符

 这里,直接使用简介的语法来作为比较

如果对比Java的比较来说

in 和not in 就是判断元素是否存在与集合

is 和 not is 就是判断是否是同一元素/对象,比较地址指向 

# 像== !=则比较的是值是否相同  特定情况下,如:判断的是固定的值如字符串 则 is not is 和 == != 等价

还有个运算符为三元运算符  作用就是 结果 =判断条件 if true   结果A   else 结果B   

# 写法:

x, y = 4, 5
small = x if x < y else y
print(small)  

 运算顺序

 这里需要添加一个,括号在运算符运算之前

 变量和赋值

变量

因为Python是弱类型语言,所以对定义没有什么特殊的要求,不用去特地声明变量的类型,对于变量,大小写区分,可以为数字,字符下划线组成,但是不能为下划线开头,且变量需要进行赋值

Python 里面万物皆对象(object),整型也不例外,只要是对象,就有相应的属性 (attributes) 和方法(methods)。内部会去识别对象的类型.

  • 基本类型:整型、浮点型、布尔型
  • 容器类型:字符串、元组、列表、字典和集合

 

'''
dir() 函数不带参数时,返回当前范围内的变量、方法和定义的类型列表
带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),
该方法将被调用。如果参数不包含__dir__(),该方法将最大限度地收集参数信息。
'''
b = dir(int)
print(b)

使用dir()方法就可以查看方法和类型列表,具体根据文档使用,慢慢熟悉并使用习惯

Python的包

      里面有很多用途广泛的包 (package),用什么你就引进 (import) 什么。包也是对象,也可以用上面提到的`dir(decimal)` 来看其属性和方法。

使用方法:

import decimal #导包
from decimal import Decimal 具体到对象
 
print(dir(decimal))

#out
"""
['BasicContext', 'Clamped', 'Context', 'ConversionSyntax', 'Decimal',
 'DecimalException', 'DecimalTuple', 'DefaultContext', 'DivisionByZero',
 'DivisionImpossible', 'DivisionUndefined', 'ExtendedContext', 'FloatOperation',
 'HAVE_THREADS', 'Inexact', 'InvalidContext', 'InvalidOperation', 'MAX_EMAX',
 'MAX_PREC', 'MIN_EMIN', 'MIN_ETINY', 'Overflow', 'ROUND_05UP', 'ROUND_CEILING', 
'ROUND_DOWN', 'ROUND_FLOOR', 'ROUND_HALF_DOWN', 'ROUND_HALF_EVEN', 'ROUND_HALF_UP',
 'ROUND_UP', 'Rounded', 'Subnormal', 'Underflow', '__builtins__', '__cached__',
 '__doc__', '__file__', '__libmpdec_version__', '__loader__', '__name__',
 '__package__', '__spec__', '__version__', 'getcontext', 'localcontext', 'setcontext']
"""

bool()方法: 创建布尔值

   bool 作用在基本类型变量:X 只要不是整型 0、浮点型 0.0bool(X) 就是 True,其余就是 False

   bool 作用在容器类型变量:X 只要不是空的变量,bool(X) 就是 True,其余就是 False

 type()方法: 判断类型
isinstance()方法:  判断方法,考虑继承关系

-转换为整型 `int(x, base=10)`
 转换为字符串 `str(object='')`
 转换为浮点型 `float(x)`
 

 

总结:

     这次Task主要有以下几点:

  •            python的基本语法
  •            计算机基础的相关知识.结合python的位运算符的操作,实现多种操作方式操作
  •            三种语句,  顺序语句  、[if , else , ifel ] 的判断语句格式、[while循环, while else循环,for循环 ]循环语句
  •            异常处理,并使用try exception 去捕获异常  或者最后添加finally最后实现

     了解了很多python相关知识,基本上和Java理解上区别不大,诸如type()和isinstance()方法区别,像输出这些,输出集合,相当于foreach循环和前端的vue的v-for都是在里面设置对应方法就可以实现不同的效果,但是基本意思上还是有区别的,这些后面再详细了解下底层的实现.

     个人觉得虽然和Java有相似点,但是不能被Java所框住了,毕竟每个语言都有自己的特点,这点要自己去进行思维开阔,不要被Java所禁锢了,就这样吧,后面加油.

     

 

 

 

 

 

 

 

 

 

 

 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值