首页 > 编程语言 > 详细

python(课堂笔记2)

时间:2019-02-27 00:53:48      阅读:237      评论:0      收藏:0      [点我收藏+]
  • 模块初识
  • 数据类型
  • 三元运算
  • bytes类型
  • 浅拷贝和深拷贝和赋值的区别

模块也可以叫库。分为标准库和第三方库。区别在于标准库不需要安装,可以直接导入的内置模块。

第三方库则是需要安装的库。

  

import sys


sys.argv #打印环境变量(相对路径)


import os

os.system(dir)  #执行命令,不执行结果 
a = os.popen(dir).read() #用read()方法调取它的结果,结果存在内存中。
print(a)

 

os.mkdir(new dir) #创建目录

 

驱动器 C 中的卷没有标签。
卷的序列号是 A649-EE2A

C:\Users\Administrator\PycharmProjects\day01\day02 的目录

2019/02/26 22:16 <DIR> .
2019/02/26 22:16 <DIR> ..
2019/02/25 19:39 165 encode to decode.py
2019/02/26 11:11 <DIR> fp
2019/02/26 16:58 1,122 list.py
2019/02/26 20:26 1,329 shopping.py
2019/02/26 21:47 21 str1.py
2019/02/26 22:16 263 模块初始.py
2019/02/26 16:57 644 浅拷贝.py
2019/02/22 21:11 551 爬虫.py
7 个文件 4,095 字节
3 个目录 8,209,002,496 可用字节

  • 动态数据类型

Number

int(整型),注:在python2.x中有份整型和长整型long。

float 浮点数,带有小数点的浮点数。

布尔型

0和1 True or False

字符串

由有单引号或双引号括起来的。
s = sleiman is very handsome
s1 = sleiman\n
print(s.capitalize()) #首字母大写 Sleiman is very handsome
print(s.title()) #首席母大写 Sleiman Is Very Handsome
print(s.count(e)) #出现的次数 3
print(s.center(50,-)) #-------------sleiman is very handsome-------------
print((sleiman).endswith(an))#以an结尾的
print(s1.startswith(sl)) #以sl开头
print((格式化输出:%s% s).format())
print(s.find(s))#索引值
print(s.isdigit()) #是否为整数
print((t1).isalnum()) #是否为字母或数字
print(s.isalpha()) #是否为字母
print(s.isdecimal())#是否为数字
print(s.isidentifier())#判断是否为合法是标识符
print(s.islower())#是否为小写
print(s.isupper())# 是否为大写
print(s.lower())#小写
print(s.upper())#大写
s2 =   str    
print(s2.strip()) #去掉两边的空格\t\n空格
# 字符串拼接
print(+.join([1,2,3]))
print(s2.replace(r,l,1)) #参数一:被替换的参数  参数二:替换的参数,三:替换的次数
print(s.split( )) #按空格分割,逗号
s3 = \nstr
print(s3.splitlines()) #按行分割
  • 列表
# 列表的增删改查
names = [tom, candy, jerry ,hurry, alan]

# 切片
# print(names[:2])
# print(names[-3:])
print(names[: :2]) #[‘tom‘, ‘jerry‘, ‘alan‘]

#
names.append(1)
print(names)


#指定插入
names.insert(1,1)  #[‘tom‘, ‘candy‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1]
names.insert(3,3)  #[‘tom‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1]
print(names)

#增加

names.extend([1,2,3])  #合并 [‘tom‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1, 2, 3]
#
# names.remove(‘1‘) [‘tom‘,‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1]
# del names[3] [‘tom‘, ‘1‘, ‘candy‘, ‘jerry‘, ‘hurry‘, ‘alan‘, 1]
names.pop()  #默认从最后一个开始删除,指定下标志删除
# [‘tom‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘]
# names.clear()  #清空列表 []
print(names)

#
names[0] = gary #[‘gary‘, ‘1‘, ‘candy‘, ‘3‘, ‘jerry‘, ‘hurry‘, ‘alan‘]

print(names)


#
print(names.index(1)) #1
print(names.count(1)) #2次
# names.reverse()
print(names)  #反转
list1 = [1,2,3,4,5,6]
list1.sort(reverse=True) #降序 默认升序
print(list1)
  • 元组

元组由小括号括起来的。一旦初始化,就不能更改。

注;后面的数据类型下次会更新上来。

#切片
names = (alan,jack)
print(names[:1])

#查询
print((1,2,3,4,1,1).count(1)) #3

注:后面的数据类型下次更新上来。

  • 三元运算
# result = 值1 if 条件 else 值2
# 条件为真则result为值1
# 条件为假则result为值2
a = 1
b = 2
result1 = a if a>b else b #2
print(result1) 
  • 浅拷贝、深拷贝、赋值区别

赋值拷贝:list1与list2分别指向 list1的值,list1重新赋值后指针发生改变,list2指针不变。

浅拷贝:list1调用copy()方法后与上面的赋值拷贝原理一样,区别在于在二维列表中,list1和list2都指向了list[0] = ‘zero‘这个值,并没有复制它。

深拷贝:list1复制了二维列表中的值,而list2不变。

#复制拷贝
list1 = [1,2,[3,4]]
list2 = list1
print(list1) #[1, 2, [3, 4]]
print(list2) #[1, 2, [3, 4]]
list1 = [‘zero‘,2,[3,4]]
print(list1) #[‘zero‘, 2, [3, 4]]
print(list2) #[1, 2, [3, 4]]


# 浅拷贝
list1 = [1,2,[3,4]]
list2 = list1.copy()
print(list1) #[1, 2, [3, 4]]
print(list2) #[1, 2, [3, 4]]
list1[0] = zero
print(list1) #[‘zero‘, 2, [3, 4]]
print(list2)  #[1, 2, [3, 4]]
list1[2][0] = three
print(list1) # [‘zero‘, 2, [‘three‘, 4]]
print(list2)# #[1, 2, [‘three‘, 4]]


#深拷贝
import copy
list1 = [1,2,[3,4]]
list2 = copy.deepcopy(list1)
print(list1) #[1, 2, [3, 4]]
print(list2) #[1, 2, [3, 4]]
list1[0] = zero
print(list1) #[‘zero‘, 2, [3, 4]]
print(list2)  #[1, 2, [3, 4]]
list1[2][0] = three
print(list1) #[‘zero‘, 2, [‘three‘, 4]]
print(list2) # [1, 2, [3, 4]]
  • bytes
#字符串转二进制
print(中国.encode(utf-8)) #编码 b‘\xe4\xb8\xad\xe5\x9b\xbd‘

#相反  解码
print(b\xe4\xb8\xad\xe5\x9b\xbd.decode(utf-8)) #中国

 

python(课堂笔记2)

原文:https://www.cnblogs.com/liux1996/p/10441126.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!