python初步见解

变量

(变量名必须是大小写英文、数字和_的组合,且不能用数字开头) 在Python中,不需要事先声明变量名及其类型,直接赋值即可创建各种类型的对象变量。这一点适用于Python任意类型的对象。
Python中可以使用 id 命令查看变量的地址。

关于变量命名

  1. 变量名必须以字母或下划线开头,但以下划线开头的变量在Python中有特殊含义;
  2. 变量名中不能有空格以及标点符号(括号、引号、逗号、斜线、反斜线、冒号、句号、问号等等);
  3. 不能使用关键字作变量名,可以导入keyword模块后使用print(keyword.kwlist)查看所有Python关键字;
  4. 变量名对英文字母的大小写敏感,例如student和Student是不同的变量。
  5. 不建议使用系统内置的模块名、类型名或函数名以及已导入的模块名及其成员名作变量名,这将会改变其类型和含义,可以通过dir(builtin)查看所有内置模块、类型和函数;
  6. dir() 函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。

常量

比如常用的数学常数π就是一个常量。在Python中,通常用全部大写的变量名表示常量。但事实上PI仍然是一个变量,Python根本没有任何机制保证PI不会被改变,所以,用全部大写的变量名表示常量只是一个习惯上的用法,如果你一定要改变变量PI的值,也没人能拦住你。

不光任何自定义变量可以随时被修改,连系统自带的函数和对象都可以随时被修改,比如,一旦你重定义了print为一个变量,那么你就没有办法打印了!千万谨慎!!

运算符

在这里插入图片描述
关系运算符:==, !=, >, <, >=, <=
逻辑运算符:and,or,not
位运算符:与&,或|,异或^,取反~,左移<<, 右移>>
身份运算符用于比较两个对象的内存地址。常用的有两个身份运算符:is 和 is not
成员运算符用于测试给定值是否为序列中的成员,例如字符串,列表或元组,两个:in 和 not in

基本数据类型

整型

Python支持任意大的数字,具体可以大到什么程度仅受内存大小的限制。

浮点

由于精度的问题,对于浮点运算可能会有一定的误差,应尽量避免在浮点数之间直接进行相等性测试,而是应该以二者之差的绝对值是否足够小作为两个浮点数是否相等的依据。

在数字的算术运算表达式求值时会进行隐式的类型转换,如果存在复数则都变成复数,如果没有复数但是有实数就都变成实数,如果都是整数则不进行类型转换。

布尔型

ture/ false

字符串

在Python中,没有字符常量和变量的概念,只有字符串类型的常量和变量,单个字符也是字符串。使用单引号、双引号、三单引号、三双引号作为定界符(delimiter)来表示字符串,并且不同的定界符之间可以互相嵌套。

字符串的拼接

a = 'good ’
b = ‘morning’
x = a + b #连接字符串
x

强悍的字符串切片(重点)

lang = ‘python’
print(lang[0])
print(lang[3])
print(lang[-1])
截取字符串中的一段字符串可以使用切片,切片在方括号中使用冒号:来分隔需要截取的首尾字符串的索引,方式是包括开头,不包括结尾
print(lang[1:-1])
当尾索引没有给出时,默认截取到字符串的末尾
lang[1:]
当头索引没有给出的时候默认从字符串开头开始截取
lang[:3]
当尾索引和头索引都没有给出的时候,默认返回整个字符串
lang[:]
当尾索引大于总的字符串长度时,默认只截取到字符串末尾,很明显使用这种方法来截取一段到字符串末尾的子字符串是非常不明智的,应该是不给出尾索引才是最佳实践
lang[3:100]
当头索引为负数时,则是指从字符串的尾部开始计数,最末尾的字符记为-1,以此类推,因此此时应该注意尾索引的值,尾索引同样可以为负数,如果尾索引的值指明的字符串位置小于或等于头索引,此时会报错。
lang[-2:]
lang[-2,2]
完全版的切片,有三个参数,第三个是步长(类似于C语言里面的for循环),巧妙使用步长参数可以轻易的反转一个字符串:
lang[::-1]
切片的思想在数组(list)和Numpy以及Pandas等数据分析库中是非常非常普遍的。一定要熟悉和掌握。

Python字符串常用的方法

使用len()方法获取字符串长度
len(lang)
使用in操作符判断某个子字符是否在字符串中
‘p’ in lang
‘aaa’ in lang
使用max()和min()方法获取字符串中编码极值对应的字符
max(lang)
min(lang)
使用*操作符对字符串进行重复
(lang+’ ‘)*3
lang+’ ‘*3
使用str()方法将其他数据类型转化为字符串
str(3.14159)
使用split()方法将字符串按照指定的字符串分隔,返回数组
“I am a good man”.split(’ ‘)
使用join()方法连接字符串数组为一个完整的字符串
a=“I am a good man”.split(’ ‘)
‘.’.join(a)
使用count()方法获取某个字符在字符串中出现的次数
‘aaa111223a’.count(‘a’)
使用index()方法获取某个字符在字符串中首次出现的位置的索引
lang.index(‘p’)
lang.index(‘n’)
使用strip()方法去除字符串头尾的特定字符,默认去除空格和换行
lang=’ python \n’
lang.strip()
lang

常用内置函数

内置函数(BIF,built-in functions)是Python内置对象类型之一,不需要额外导入任何模块即可直接使用,这些内置对象都封装在内置模块builtins之中,用C语言实现并且进行了大量优化,具有非常快的运行速度,推荐优先使用。可以使用help函数查询各个函数的使用。

输入

input函数负责获取用户的输入,返回总是一个字符串,如果需要获得整数或者浮点,需要自己进行转换

输出

print是强大且普遍运用的输出语句,和c语言的printf类似。

占位符

使用{}占位,里面可以使用数字,与后面的参数对应,参数可以是一个数组,下标即为占位符里的数字。
占位符里面也可以是名字,与后面的关键字参数对应,参数也可以是一个字典,key即为占位符里的名字。
print(“{} {}”.format(“hello”, “world”)) # 不指定位置,按默认顺序
print(“{0} {1}”.format(“hello”, “world”)) # 指定位置
print(“{1} {0} {1}”.format(“hello”, “world”)) # 指定位置,可以重用
print(‘{name},{sex},{age}’.format(age=32,sex=‘男’,name=‘张三’)) # 使用关键字参数指定名字
hello world
hello world
world hello world
张三,男,32

填充与对齐

填充常跟对齐一起使用
(< (默认)左对齐)
(> 右对齐)
(^ 中间对齐)
后面带宽度
:号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充

类型与精度

f 表示浮点
.2f 小数点后2位
.0f 取整
e 表示科学计数
% 表示百分制
, 表示金融数字格式
b 表示二进制
d 表示十进制(默认)
o 表示八进制
x 表示十六进制

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

光头屠手

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

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

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

打赏作者

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

抵扣说明:

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

余额充值