C语言基础学习PYTHON——基础学习D01

20180705内容纲要:

  1 PYTHON介绍

  2 PYTHON变量定义规则

  3  PYTHON文件结构

  4 PYTHON语句及语法

  5 字符编码

  6 数据类型

  7 模块

  8 小结

  9 练习:购物车小程序

  • 编译和解释的区别?

编译和解释都有“翻译”的意思,它们的区别在于翻译的时机安排不大一样。打个比方:假如你打算阅读一本外文书,而你不知道这门外语,你可以找一个翻译,给他足够的时间让他从头到尾把书翻译好,然后把书的母语版交给你;或者,你也可以让这名翻译辅助你阅读,让他一句一句地给你翻译,如果你想回看某个章节,他也得给你重新翻译。

1 PYTHON基本介绍

Python是面向对象、动态、解释型、强定义类型脚本编程语言。

2 PYTHON变量定义规则

(1)在python中,标识符由数字、字母、下划线组成;

(2)标识符不能以数字开头,且区分大小写;

(3)以下划线开头的标识符是有特殊意义的。以单下划线开头( _x)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入;

(4)以双下划线开头的 (__x) 代表类的私有成员;

(5)以双下划线开头和结尾的 (__x__) 代表 Python 里特殊方法专用的标识,如 __init__() 代表类的构造函数;

(6)Python 可以同一行显示多条语句,方法是用分号 ; 分开。

3 PYTHON文件结构

(1)起始行:#!usr/bin/env python    可以在view-toolbar-settings中设置

(2)模块文档  “This is a test module”

(3)模块导入  import sys    import os...

(4)全局变量定义   debug=True

(5)类定义(若有)

(6)函数定义(若有)

(7)主程序

4 PYTHON语句及语法

(1)注释

  a、单行注释  #

  b、多行注释  ''' 被注释内容''' 或"""被注释内容  """"

(2)代码组

  Python中缩进相同的一组代码组成一个代码块;

  首行以关键字开始,如if,while等,以冒号结束;

  Python中必须严格执行缩进;

  同一行放置多个语句用分号进行分割。

5 字符编码

(1)ASCII

(2)GB2310-GBK1.0-GB18030

(3)Unicode

(4)Utf-8

6 数据类型

(1)数字类型:int  float  long  complex  布尔型

(2)字符型:str

  数据类型转换:

 1 num1=5.61
2 type(num1)
3 str(num1)
4 print(num1)
5 type(num1)
6 repr(num1)
7 type(num1)
8 str1=repr(num1)
9 type(str1)
10 print(str1)

(3)列表[ ]

容器类型。任意对象的有序集合,通过索引访问其中的元素,可变对象,异构,任意嵌套。

l1=[]
print l1
id(l1)
l2 = [1,2,3,4,5]
print l2
l3 = [1,'b'] #异构
print l3
l4 = [[1,2],['a','b']] #嵌套
print l4

支持原处修改

l2 = [1,2,3,4,5]
print l2
l3 = [1,'b']
print l3
l4 = [[1,2],['a','b']]
print l4
l2[1] =32
print l2
l2[3] = 'xyz'
print l2
l2[1:3]
l2[1:3] = []
print l2
l2[1]
del(l2[1:])
print l2
l3 =[1,2,3,4,5,6]
l3.
l3.append(77)
peint l3
id(l3)
l3.append(106)
id(l3)
print (l3)
l4 =['x','y','z']
l3.append(l4)
id(l3)
print(l3)
l3.sort
help(list.sort)
l3.reverse

(4)元组()

又叫“只读列表”,只支持 .count和 .index,即查询和计数功能。

t1 =(1,2,3,4,5)
t1.index
t1.count(2)
t1.3
t1.index(3)
t1.index(30)
30 in t1
print t1
print t1[1:]
t2=()
len(t2)
t3=(,)
t4 = x
t4 ='x','y','z'
print t4
t1 + t4
t4 * 3
'x' in t4
1 in t4
t5 =['x',[1,2,3]]
print t5
print t5[1]
t5[1].pop()
print t5
id(t5)
t5[1].append(6)
id(t5)
print t5

(5)字典

字典dict是无序的,key必须是唯一的。支持多级嵌套和循环。

d1={‘x’:32,'y':[1,2,3,4]}
d1[0]
d1['x']
d1['y']
d1['y'][1:]
len(d1)
d1['x']
d1['x'] = 504
print d1
d1.
di.copy()
d2 = d1.copy()
d3 = d1
print d3
id(d3)
id(d1)
id(d2)
help(dict.fromkeys)
d1.get('x')
d1.get('y')
d1.has_key('x')
d1.has_key('y')
d1.has_key('z')
help(dice.items)
d1.items()
t1,t2=d1.items()
print t1
print t2
#字典复制
m1,m2={'x':1,'y':2}
print m1
print m2
d1.keys()
d1.items()
d1.values()
d1.pop('x')
print d1
d2.popitem()
d2.popitem()
d2.popitem()
d1={'x':1,'y':2}
d2={'m':21,'n':76,'y':44}
d1.update(d2)
print d1
#Author:ZhangKanghui

info = {
'stu1101': "TengLan Wu",
'stu1102': "LongZe Luola",
'stu1103': "XiaoZe Maliya",
}
'''
#增加
info["stu1104"] ="CangJing Kong"
print(info)
#修改
info["stu1101"]="武藤兰"
print(info)
#删除
info.pop("stu1101") #标准删除姿势,pop(键值)
print(info)
del info["stu1102"]
print(info)
info.popitem() #随机删除
print(info) #查找
print("stu1102" in info) #标准用法
print(info.get("stu1102")) #获取
print(info.get("stu1105")) #获取
print(info["stu1102"]) #如果一个key不存在你就会报错,get就不会,不存在返回none
'''
'''
#字典多级嵌套
av_catalog = {
"欧美":{
"www.youporn.com": ["很多免费的,世界最大的","质量一般"],
"www.pornhub.com": ["很多免费的,也很大","质量比yourporn高点"],
"letmedothistoyou.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
"x-art.com":["质量很高,真的很高","全部收费,屌比请绕过"]
},
"日韩":{
"tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","听说是收费的"]
},
"大陆":{
"":["全部免费,真好,好人一生平安","服务器在国外,慢"]
}
} av_catalog["大陆"][""][] += ",可以用爬虫爬下来" print(av_catalog["大陆"][""])
print(info.values()) #value输出字典所有values成一个列表
#av_catalog.setdefault("台湾",{"www.baidu.com":[,]})
av_catalog.setdefault("大陆",{"www.baidu.com":[,]}) #setdefault就是如果字典里没有就新创建一个,如果存在就不改动
print(av_catalog)
'''
'''
b ={
"stu1101" :"alex",
: ,
: ,
}
info.update(b) #update取交集
print(info)
print(info.keys())
print(info.items()) #将字典变成列表
c =info.fromkeys([,,],"test") #初始化一个新的字典
print(c)
c =info.fromkeys([,,],[,{"name":"alex"}])
print(c)
c[][]['name'] ="Jack Chen" #fromkeys创建一个新的字典时有个坑!
print(c)
'''
#字典的循环
for i in info:
print(i)
print(i,info[i]) for k,v in info.items():
print(k,v)

7 模块

sys模块在系统文件夹内找不到,是因为这是一个用c语言写的模块,不同于os这些用python语言写的模块。

Python模块可以将代码量较大的程序分割成多个有组织、彼此独立但又能相互交互的代码片段,这些自我包含的有组织的代码就是模块。

模块在物理形式上表选为以.py结尾的代码文件。

一个文件可以被看做一个独立的模块,一个模块也可以被看做一个文件。

每个模块都有自己名称空间。

 #Author:ZhangKanghui

 '''
import sys
#print (sys.path) #打印环境变量
#print(sys.argv)
print(sys.argv[2])
''' import os
'''
cmd_res = os.system("dir") #执行命令,不保存结果 0表示执行成功状态
print (cmd_res)
''' '''
cmd_res = os.popen("dir")
print (cmd_res)
''' cmd_res = os.popen("dir").read()
print (cmd_res)
os.mkdir("new_dir")
import sys
print(sys.path) #打印环境变量 '''
['C:\\Users\\miraacle\\PycharmProjects\\s\\day2',
'C:\\Users\\miraacle\\PycharmProjects\\s',
'C:\\Users\\miraacle\\AppData\\Local\\Programs\\Python\\Python36-32\\python36.zip',
'C:\\Users\\miraacle\\AppData\\Local\\Programs\\Python\\Python36-32\\DLLs',
'C:\\Users\\miraacle\\AppData\\Local\\Programs\\Python\\Python36-32\\lib', #python中存在标准库模块文件路径
'C:\\Users\\miraacle\\AppData\\Local\\Programs\\Python\\Python36-32',
'C:\\Users\\miraacle\\AppData\\Local\\Programs\\Python\\Python36-32\\lib\\site-packages'] #python中存在第三方模块文件路径
''' print(sys.argv) # ['C:/Users/miraacle/PycharmProjects/s/day2/sys_mod.py'] #使用pycharm运行结果
['sys_mod.py'] #使用命令行 运行sys——mod.py >>python sys_mod.py 1 2 3 ['sys_mod.py', '', '', '']

8 小结

跟c差不多!但比c简单的多·~~

9 练习

购物车小程序

需求:
1.启动程序后,让用户输入工资,然后打印商品列表
2.允许用户根据商品编号购买商品
3.用户选择商品后,检测余额是否足够,够就直接扣钱,不够提醒
4.可随时退出,退出时打印已购买商品和余额

这是尾巴:

最后推荐一个链接:python基础教程http://www.runoob.com/python/python-tutorial.html

内容系统全面!

这是随笔~

												

D01——C语言基础学PYTHON的更多相关文章

  1. D10——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D10 20180906内容纲要: 1.协程 (1)yield (2)greenlet (3)gevent (4)gevent实现单线程下socket多并发 2. ...

  2. D16——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D16 20180927内容纲要: 1.JavaScript介绍 2.JavaScript功能介绍 3.JavaScript变量 4.Dom操作 a.获取标签 b ...

  3. D15——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D15 20180926内容纲要: 1.CSS介绍 2.CSS的四种引入方式 3.CSS选择器 4.CSS常用属性 5.小结 6.练习 1 CSS介绍 层叠样式表 ...

  4. D07——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D07 20180826内容纲要: 面向对象进阶学习 1 静态方法 2 类方法 3 属性方法 4 类的特殊成员方法(本节重点) 5 反射(本节重点) 6 异常(本 ...

  5. D06——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D06 20180821内容纲要: 面向对象初级学习 1 面向对象 2 类 (1)封装 (2)继承 (3)多态 3 小结 4 练习:选课系统 5 课外拓展:答题系 ...

  6. D05——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D05 20180815内容纲要: 1 模块 2 包 3 import的本质 4 内置模块详解 (1)time&datetime (2)datetime ...

  7. D17——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D17 20181014内容纲要: 1.jQuery介绍 2.jQuery功能介绍 (1)jQuery的引入方式 (2)选择器 (3)筛选 (4)文本操作 (5) ...

  8. D14——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D14 20180919内容纲要: 1.html认识 2.常用标签 3.京东html 4.小结 5.练习(简易淘宝html) 1.html初识(HyperText ...

  9. D13——C语言基础学PYTHON

    C语言基础学习PYTHON——基础学习D13 20180918内容纲要: 堡垒机运维开发 1.堡垒机的介绍 2.堡垒机的架构 3.小结 4.堡垒机的功能实现需求 1 堡垒机的介绍 百度百科 随着信息安 ...

随机推荐

  1. QByteArray to QString

    QByteArray => QString void BarEngine::ByteArrayToString(QByteArray &ba, QString &str) { i ...

  2. centos6.5修改root密码

    转:https://blog.csdn.net/cui1834515/article/details/77860113

  3. [Selenium]Release in dragAndDrop doesn't work after i update the version of Selenium to 2.45.0

    在升级Selenium的版本之前,写了一段拖拽的代码,Drag and Drop 都好使的, 但是,将Selenium的版本升级到2.45.0之后,图标拖拽可以成功,释放不生效. 试了N多种解决方案都 ...

  4. Java 设计模式系列(十五)观察者模式(Observer)

    Java 设计模式系列(十五)观察者模式(Observer) Java 设计模式系列目录(https://www.cnblogs.com/binarylei/p/10198698.html) Java ...

  5. UVa 10118 Free Candies (记忆化搜索+哈希)

    题意:有4堆糖果,每堆有n(最多40)个,有一个篮子,最多装5个糖果,我们每次只能从某一堆糖果里拿出一个糖果,如果篮子里有两个相同的糖果, 那么就可以把这两个(一对)糖果放进自己的口袋里,问最多能拿走 ...

  6. dojo学习(一)入门

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  7. OpenGL中的像素包装理解

    OpenGL中的像素包装理解 像素包装 位图和像素图很少会被紧密包装到内存中.在许多硬件平台上,考虑到性能的原因位图和像素图的每一行的数据会从特殊的字节对齐地址开始.绝大多数编译 器会自动把变量和缓冲 ...

  8. php CI框架输出空行问题排查

    今天在使用 curl 命令行工具调试一个功能时,发现输出的内容总是会在最开始莫名其妙的多一行空行: 项目框架是 php 的 CodeIgniter,感觉这种问题在网上不好查找,因为可以确定这个是业务出 ...

  9. 让FIREDAC记录数据库的异常日志

    默认FIREDAC不会记录数据库的异常. 比如典型的,提交的时候,非空字段没有给值. 某些人还以为FIREDAC不能捕获数据库的异常,其实FIREDAC是可以捕获并处理数据库的异常事件的. 方法异常简 ...

  10. How to extract msu/msp/msi/exe files from the command line

    http://www.windowswiki.info/2009/02/19/how-to-extract-msumspmsiexe-files-from-the-command-line/ Micr ...