MyException - 我的异常网
当前位置:我的异常网» Perl/Python » 生手自学:pytion基础(第二周笔记)

生手自学:pytion基础(第二周笔记)

www.MyException.Cn  网友分享于:2013-08-20  浏览:0次
新手自学:pytion基础(第二周笔记)

一,模块初识

.标准库,不需要安装使用pytion最基础的内容

 .第三方库 必须下载安装

.自己写模块或者文件名字不能和需要导入的库名相同
import sys  #sys 模块 
sys.path   
print(sys.path) #打印环境变量 提示sys.xxx
print(sys.argv) #打印绝对路径 :相对路径
print(sys.argv[2])
import os #用于和操作系统进行交互模块的os模块
os.system("dir") #dir查看当前路径
cmd_res=os.system("dir")#执行命令不保结果
cmd_res=os.popen("dir").read #read 把结果存到内存里的一个临时的地方
print("-->",cmd_res)
os.mkdir("new_dir") mkdir 创建目录用的

模块调用 自己写一个输入用户密码的py 然后在新的py里inport 这个模块即可使用

二,数据类型

 

数字
int(整形)
long(长整形)
.整数
.浮点数
float(浮点数)2.32和52.3e-4
complex(复数)(-5+4j)(2.3-4.6j)

 

布尔值
.真或假.1或0
.真Tune 假false
.字符串
."hello world"

.数据运算
计算机中表示的最小单位,是一个二进制位
计算机中存储的最小单位,是一个二进制位

 

8bit= byte(字节)
1024byte= 1kbyte
1024kbyte=1mbyte
1024mbyte=1gbyte
1024gbyte=1tbyte
三元运算
result=值1 if条件 else值2
如果条件为真:result=值1
如果条件为假:result=值2
a.b.c=1.3.5
d=a if a>b else c
d=5
d=a if a<b else c
d=1
.二进制,01
.八进制,01234567
.十进制,0123456789
.十六进制0123456789ABCDEF
H代表十六进制 如bh=11
0x也是
encode
decode 二进制转字符块
msg=("我爱爱北京天安门")
print(msg.encode(encoding="utf-8")) #转二进制
print(msg.encode(encoding="utf-8").decode(encoding="utf-8")) #转回
把一个字符块用encode转成二进制byte 再将用decode转回字符块.

三,列表 元祖的使用

 

列表,元组操作
names=["Alex","enle","good","hello","yello","school"] #列表
names2=("sui lin", "lin xin","zhi qiang")#元组 =只读列表 不具有修改,增加,删除等特性
#print(names[0])#Alex
#print(names[3])#hello
#print(names[1:3])#['enle', 'doog']切片<取两个数中间的值>
#print(names[-2])#yellow 
#print(names[-3:-1])#['hello', 'yello']切片
#print(names[:3])#['Alex', 'enle', 'good']前边或者后边不写即取最后<前>一个值
#names.reverse() #<将列表反着打印>
#names.sort() #按ASCll码排序
#names.append("glood")#增加用户在最后
#names.insert(1,"glood")#再指定位置增加用户,原来用户往后移动一位
#names[2]="king" #替换用户
#names.remove("good")#删除一个用户
#del names [2] #删除用户第二种方法
#names.pop(2)#pop删除最后一个输入位置则执行位置
#print(names.index("good")) 查到用户的位置
#print(names[names.index("good")])#查找并打印用户的账户
#print(names.count("good"))#统计用户姓名数量
#names.clear()#清空用户数据
#del names2[:]#删除names2的用户数
#names.extend(names2)#增加一个分组
print(names)

 

 

names.copy() 相当于复制一个列表
复制一份names2 等于name
把names里边的用户改一个成中文
names列表里再包含一个列表
只浅copy第一层 不copy修改的地方

 

调用copy模块 使name2=copy.copy(names)
使name2=copy.deepcopy(names) #深copy
print(names[0:-1:2])#跳着打印
print(names[::2]) #跳着打印

做列表的for循环
for i in names:
print(i)
代码

names=["Alex","enle","good",["tich","alppe"],"hello","yello","school"]
names2=["sui lin", "lin xin","zhi qiang"]
names3 = copy.deepcopy(names)#深copy
names4= copy.copy(names)#浅copy的三种实现方式
names5= names[:] #切片实现浅copy
naes6= list(names)

 

#print(names[0:-1:2])
#print(names[::2])
names[2]="非常好"
names [3][1] = "flac"
print(names3)
print(names)
print(names3)

 

for i in names:
print(i)

四,购物车程序代码

 

 

 

#print(products_list.index(item),item)# index 索引 item 逐条列出
#break

 


#enumerate ()#把列表的下标排序直接找出来

 

#print(salary)

五, 字符串的常用操作

print(name.capitalize())#首字母大写
print(name.count("e")) #统计字母数量
print(name.center(50,"-")) #标题50个-号
print(name.encode())#把字符串转成二进制
print(name.endswith("le"))#判断尾数是否以""结尾
print(name.expandtabs(tabsize=50)) #把\t转为空格
print(name[name.find("l"):])# 位置及切片
print(name.format(name="enle",age="22"))#改变{}里的变量
'''
print(name.isdigit()) #判断name是否为数字
print('asdf123'.isalnum())#判断这是不是一个阿拉伯数字
print('abA'.isalpha())#纯英文字符
print('1'.isdecimal())#忘记他
print('1'.isdigit())#判断是否为一个整数
print('a1A'.isidentifier())#判断是不是一个合法的标识符
print('a1a'.islower())#'判断是不是小写'
print('33'.isnumeric())#忘记他
print(' '.isspace())#判断是不是空格
print('My Name Is'.istitle()) #判断是不是大写开头
print('My Name Is'.istitle())#tty file drive file
print('M'.isupper())#判断是否全是大写
print('+'.join(['1','2','3','4'])) #转成字符串
print(name.ljust(50,'*'))#表示长50 不够用*号补上
print(name.rjust(50,'*'))#表示长50 不够用*号补上
print('Enle'.lower())#把大写变成小写
print('Enle'.upper())#把小写变成大写
print('\nEnle'.lstrip())#去除左边\n换行空格
print('Enle\n'.rstrip())#去除右边\n换行空格
print('\nEnle\n'.strip())#去除左右边\n换行空格
p= str.maketrans("abcdefli",'123$%456')
print("alex li".translate(p)) # 古代的文本加密模式
print("alex li".replace('l','L',1))
print("alex lie".rfind('e'))#找到最后面值的下标
print("alex li".split('l'))#按照空格来分成列表或者符号
print("1+2\n+3+4".splitlines())#自动识别不同系统换行
print("alEx li".swapcase()) #大小写互相转换
print("alex li ee".title())#把首字母换成
print("alex li".zfill(50))#不够的用0填充

六,字典的使用

#字典没有下标只有key

info = {
'stu1101': "TengLan Wu",
'stu1102': "LongZe Luola",
'stu1103': "XiaoZe Maliya",
} #字典
for i in info:
print(i,info[i]) #最简单的循环打印出字典所有东西 只有i只答应key值
for k,v in info.items():
print(k,v)
#区别是上面这种比下面哪种高效很多,第一种直接通过key取出数据

'''
b={
'stu1101':"alex",
1:3,
2:5,
}第二个字典

info.update(b)#有就修改没有及添加合并字典


#print(info)
c=dict.fromkeys([6,7,8],[1,{"name":"alex"},555])#初始化一个新的字典 为key附一个临时的值
print(c)
c[7][1]['name'] = "jace chen"
print(c)
#print(info.items()) #把字典转为列表


print(info)
print(info.get("stu1102")) #安全找出stu1102的值
print('stu1104' in info)# 判断是否有stu1104这个值.ifo.has_key pytion3里没有了

 

#print(info["stu1103"])
info["stu1101"]="武藤兰"#修改
info["stu1104"]=" cangjingkong"#添加
#info["stu1102"]="武藤兰"#修改
#del info["stu1104"]#删除第一种方法
#info.pop("stu1101")#删除第二种
#info.popitem()#随机删除


av_catalog.setdefault("大陆",{"网址":[1,2]})
print(av_catalog)


#av_catalog.setdefault() 如果能找到字典里的值就用字典里的找不到就添加


#print(info)

七,三级菜单程序

以下为代码

实现每一级都能退出 每一级都能返回上级菜单

八,作业

购物车的优化
用户入口
1.商品信息存在文件里
2.已购商品,余额记录.
商家入口

2.可以添加商品,修改商品价格

 

文章评论

“肮脏的”IT工作排行榜
“肮脏的”IT工作排行榜
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
程序员和编码员之间的区别
程序员和编码员之间的区别
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
10个调试和排错的小建议
10个调试和排错的小建议
2013年美国开发者薪资调查报告
2013年美国开发者薪资调查报告
Java程序员必看电影
Java程序员必看电影
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
漫画:程序员的工作
漫画:程序员的工作
每天工作4小时的程序员
每天工作4小时的程序员
我的丈夫是个程序员
我的丈夫是个程序员
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
代码女神横空出世
代码女神横空出世
程序员的鄙视链
程序员的鄙视链
 程序员的样子
程序员的样子
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
为什么程序员都是夜猫子
为什么程序员都是夜猫子
那些性感的让人尖叫的程序员
那些性感的让人尖叫的程序员
鲜为人知的编程真相
鲜为人知的编程真相
程序员都该阅读的书
程序员都该阅读的书
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
老程序员的下场
老程序员的下场
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
2013年中国软件开发者薪资调查报告
2013年中国软件开发者薪资调查报告
一个程序员的时间管理
一个程序员的时间管理
编程语言是女人
编程语言是女人
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
总结2014中国互联网十大段子
总结2014中国互联网十大段子
中美印日四国程序员比较
中美印日四国程序员比较
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
我是如何打败拖延症的
我是如何打败拖延症的
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
程序员应该关注的一些事儿
程序员应该关注的一些事儿
旅行,写作,编程
旅行,写作,编程
那些争议最大的编程观点
那些争议最大的编程观点
程序员必看的十大电影
程序员必看的十大电影
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有