1.模块初识
import sys
① print(sys.path())#打印环境变量
② sys.argv()
sys.argv(2:)
从外部环境获取参数,参数以列表形式输入,括号内可以具体某个元素或者切片。如果是sys.argv(0),则输出程序名本身
import os
os.mkdir( " " )#创建目录dictionary
os.open("dir").read() #读取当前文件下的目录
2.pyc
在说这个问题之前,我们先来说两个概念,PyCodeObject和pyc文件。
我们在硬盘上看到的pyc自然不必多说,而其实PyCodeObject则是Python编译器真正编译成的结果。我们先简单知道就可以了,继续向下看。
当python程序运行时,编译的结果则是保存在位于内存中的PyCodeObject中,当Python程序运行结束时,Python解释器则将PyCodeObject写回到pyc文件中。
当python程序第二次运行时,首先程序会在硬盘中寻找pyc文件,如果找到,则直接载入,否则就重复上面的过程。
所以我们应该这样来定位PyCodeObject和pyc文件,我们说pyc文件其实是PyCodeObject的一种持久化保存方式。
3.数据类型
整数、浮点数、布尔值、字符串、列表、元祖、字典(无序)
#python3中 字符串和字节型区分,不可混用
#三元计算
a,b,c = 1,3,5
d = a if a>b else c #5
d = a if a<b else c #1
4.字符串操作
str[ 2: ] 切片
str[ ] 取元素
str.index( " “ ) 取元素下标
str.capitalize() 首字母(字符串第一个字符)大写
str.title() 字符串中每个单词首字母大写
str.upper() 字符串中每个字母大写
str.lower() 字符串中每个字母小写
str.swapcase() 字符串字母大小写互换
str.count( “ ” ) 统计字符串中某个元素个数
str.encode( ) 编译(默认Utf-8)
str.endwith( " " ) 判断是否以某个字符作为结尾
str.startswith(" ") 判断是否以某个字符作为开头
str.find(” “) 判断字符串是否存在某个字符串
str.isalnum() 判断是否为英文字母和0-9
str.isalpha() 判断是否为英文字母
str.isdigit() 判断是否为整数
str.isdentifier() 判断是否是一个合法的标识符(变量名)
str.isdecimal() 判断是否只包含十进制字符
str.islower() 判断小写
str.isupper() 判断大写
str.istitle() 判断首字母大写
str.isnumeric() 判断是否全是数字
str.isspace() 判断空格
str.lstrip() 删除字符串左边空格
str.rstrip() 删除字符串右边空格
str.strip() 删除字符串左右全部空格
#format
name = "my name is {name} and i am {years} old"
print(name.format(name='alex',years = 23) )
print(name.format_map({'name':'alex','years':23}))
#将字符串中元素转换为另一个
p = str.maketrans("abcdef",'123456')
print("alex li".translate(p))#1l5x li
#替换
print('alex li'.replace('l','L', 1) )
#从左往右数,找到最右边的值的下标
print('alex lil'.rfind('l') )
#把字符串按照空格(或其他)组成列表
print('alex li'.split('l') )
#按照换行符组成列表
print('alex\nli'.splitlines())
#50字符,把字符串放中间,其他的用-补齐
name.center(50,"-")
#字符串长50,不够用*在右边补齐
name.ljust(50,'*')
5.列表操作
list[-1] 取最后一个值
list[ 2 ] = ' ' 修改
list.index( ' ' ) 下标
切片
list[1:3] #1,2
list[:3] # 0,1,2
list[2:] #2,3,4,...
list[-2:] #倒数第二到最后一个
list[ : : 2] #每两个取一个
追加
list.append( ' ' )
list.insert( 2 , ' ' )
删除
list.pop()
list.pop( 4 )
list.remove( ' ' )
del list[2]
长度
len(list)
循环
for i in list:
print(i)
#打印索引和值
for index,item in enumerate(list):
print(index,item)
嵌套
列表中元素可以是列表
list.clear() 清空
list.reverse() 翻转元素
list.sort() 正序
list.sort(reverse = True) 反序
list1 = [ ] 合并
list2.extend(list1)
复制
list2 = list1.copy() #当list1中元素改变时,list2不改变
list2 = list1 #当list1中元素改变时,list2改变
6.元祖操作
元素不可改变的列表
7.字典操作
key:value
dictionary[' key'] 取值
dictionary.get(' key') 安全获取,如果字典中不存在该key,则返回None
dictionary[' key'] = 'value' 修改或添加新key
dictionary.setdefault('key') 如果字典有该key,则不修改返回,如果没有则添加该key
del dictionary[' key'] 删除
dictionary.pop(' key') 删除
dictionary_1.update(dictionary_2) dictionary_1/_2字典交叉,相同键则更新新值,不同则合并
dictionary.items() 将字典转换为一个列表
dict.fromkeys([ , , ],’ ‘) 初始化一个新的字典,临时赋值
循环
for key in dictionary:
print(key,dictionary[key])#常用,快
for key,value in dictionary.items()
print(key,value)