Python基础

Posted sleepdragon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python基础相关的知识,希望对你有一定的参考价值。

.pyc是什么?

??执行Python代码时,如果导入了其他的 .py 文件,那么,执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译之后产生的字节码。如果pyc文件与py文件修改时间相同,才会读取pyc文件,否则,Python就会读原来的py文件。
??其实并不是所有的.py文件在与运行的时候都会差生.pyc文件,只有在py文件import相应的.py文件的时候,并且被import的.py文件没有执行过,才会生成相应的.pyc文件

ps:代码经过编译可以产生字节码;字节码通过反编译也可以得到代码。

数据类型

  • 数字
  • int(整型)
  • float(浮点型)
  • complex(复数)
  • 布尔值(0 or 1)
  • 字符串

注: Python存在小数池: -5~256

>>> b=257      #257,内存地址不同
>>> a=257
>>> id(a)
57594912
>>> id(b)
57594960
>>> b=256      #256,内存地址相同
>>> a=256
>>> id(b)
259737840
>>> id(a)
259737840

三元运算

result = 值1 if 条件 else 值2
如果条件为真:result = 值1
如果条件为假:result = 值2

字符串操作

特性:不可修改

string='my Name is ZhuYuLiang'

string.capitalize()                #把字符串的第一个字符大写,其余小写
输出:'My name is zhuyuliang'

string.center(30,'-')             #返回一个原字符串居中,并使用 空格[默认] 填充至长度width的新字符串
输出:'----my Name is ZhuYuLiang-----'

string.count('u')                  #返回'u'在string里面出现的次数
输出:2

string.endswith('ang')             #检查字符串是否以ang结束
输出:True

string.find('u')                   #检测u是否包含在string中,返回最左面索引,不存在返回-1
输出:13

string.rfind('u')                  #检测u是否包含在string中,返回最右面的索引,不存在返回-1
输出:15

string.index('c')                  #跟find()方法一样,只不过如果str不在string中会报一个异常.
输出:
  Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  ValueError: substring not found

string.isalnum()                   #如果string至少有一个字符并且所有字符都是字母或数字则返回True,否则返回False
输出:False                         #因为有空格

string.isalpha()                   #如果string至少有一个字符并且所有字符都是字母则返回True,否则返回False
输出:False                         #因为有空格

string.isnumeric()                 #如果string中只包含数字字符,则返回True,否则返回False
输出:False                         #因为有空格

'-'.join('123')                    #以任意字符,作为分隔符,将seq中所有的元素(字符串表示)合并为一个新的字符串
输出:'1-2-3'

string.rjust(30,"*")               #返回一个原字符串右对齐,并使用*填充至长度width的新字符串
输出:'*********my Name is ZhuYuLiang'

string.ljust(30,"*")               #返回一个原字符串左对齐,并使用*填充至长度width的新字符串
输出:'my Name is ZhuYuLiang*********'

string.lower()                     #转换string中所有大写字符为小写.
输出:'my name is zhuyuliang'

max(string)                        #返回字符串string中最大的字母,是根据ASCLL码来排序的。
输出:'y'

min(string)                        #返回字符串str中最小的字母,是根据ASCLL码来排序的。
输出:' '                          #空格的ASCLL码排在第32位

string.replace('u','Z',2)          #把string中的u替换成Z,2替换次数。
输出:'my Name is ZhZYZLiang'

string.split(" ",2)                #以" "为分隔符切片string,'2'切割次数,分割完为列表。
输出:['my', 'Name', 'is ZhuYuLiang']

string.startswith('N',3,6)         #检查字符串是否是以N开头,是则返回True,否则返回False。3~6在指定范围内检查.
输出:True

string.swapcase()                  #翻转string中的大小写
输出:'MY nAME IS zHUyUlIANG'

string.upper()                     #转换string中的小写字母为大写
输出:'MY NAME IS ZHUYULIANG'

string.zfill(30)                   #返回长度为30的字符串,原字符串string右对齐,前面填充0
输出:'000000000my Name is ZhuYuLiang'

string.strip()                     #移除元素两侧的空格,	,
等都可以去除掉
>>> str='
abc
'
>>> str.strip()
'abc'

string.lstrip()                    #移除左面元素的空格
>>> a='
c
b
'
>>> a.lstrip()
'c
b
'

string.rstrip()                    #移除右面元素的空格
>>> a='
c
b
'
>>> a.rstrip()
'
c
b'

len(string)                       #统计一个字符串长度
输出:21

string.isdigit()                  #判断字符串是否只由数字组成。
输出:False

string.title()                    #所有单词的首字母大写其余小写。
输出:'My Name Is Zhuyuliang'

string.isidentifier               #判断是否是一个合法的标识符,变量名。
输出:False                       #因为有空格

string.isupper                    #是否全部为大写。
输出:False

Maketrans                         #加密字符串
>>> intab='mZL'                   #这是具有实际字符的字符串。
>>> outtab='123'                  #这是具有相应映射字符的字符串,需要一一对应,数量不能有误差
>>> trantab=str.maketrans(intab,outtab)
>>> string.translate(trantab)
'1y Name is 2huYu3iang'           #结果被定义好的规则替换了

列表

列表切片是从左到右来切的。
str.insert(‘你要插入那个索引前面就写什么索引‘,‘插入内容‘)
insert和append都没有返回值,不用在单独赋值。
sort排序是根据ASCLL码来排序的。

元组

字典

bytes与str的转换

encode,decode

注:Python3,encode默认是utf-8。

copy

以上是关于Python基础的主要内容,如果未能解决你的问题,请参考以下文章

常用python日期日志获取内容循环的代码片段

python 有用的Python代码片段

Python 向 Postman 请求代码片段

python [代码片段]一些有趣的代码#sort

使用 Python 代码片段编写 LaTeX 文档

python 机器学习有用的代码片段