一、Python是一门什么类型语言

1、解释型:一边编译一边执行,劣势是运行速度慢,但通过运用PyPy交互解释器(JIT技术)会让python程序执行速度快很多。优势是可移植性强。

2、强类型:即类型安全类型。除非通过强制转换,否则变量类型将不会发生变化。

3、动态类型:变量类型取决于赋的值,不需要提前定义变量数据类型

二、Python的优缺点

忧:

1、可移植性强,如果没有用到与操作系统联系很强的第三方库,可以在不同的操作系统上无缝衔接运行,不需要改任何代码

2、有丰富的第三方库,功能及其丰富

3、代码强制缩进导致结构清晰,可读性强

缺:

1、运行速度慢

2、由于它是脚本语言,执行时不可加密源码。(PS:需要保密部分可用C或者C++写)

3、线程不能用多个cpu,即多核无效

三、Python2.x和Python3.x的区别

1、Python3默认采用utf-8编码格式,可以识别汉字

2、Python3的语法有一些优化:例1:input的变化

四、Python基础语法

1、变量:变量指向问题:name=name2,其中name并不是指向name2再指向内存而是直接指向name2所对应的内存,故当改变name2时,name不发生变化

2、input、print

3、字符串拼接:+号、占位符、format(命名参数加变量赋值、数字参数加顺序变量赋值)

4、while循环-else

5、for循环-else

6、if-elif-else

7、强类型转换(PS:input默认结果是字符串)

8、linux中软链接问题,将原来的python rm掉,通过ln -ls 实现新的软连接。

五、应用

1、文件操作之简单的登录

#Author:Barry
while True:
user = input("请输入用户名:")
f_User = open(r'E:\PythonProject\s14\day1\User.txt')
# for i in range(3):
# print(f.readline())
# print(type(f.readline()))
lines = f_User.readlines()#返回值为一个列表
count1 = 0
for i in lines:
element = i.strip('\n').split(',')
if user == element[1]:
count1 = 1
break
if count1 == 1:
print("该用户存在")
break
else:
print("该用户不存在,请重新输入。。")
f_User.close()
count3 = 0
for i in range(4):
pwd = input("请输入密码:")
f_lockedUser = open(r'E:\PythonProject\s14\day1\lockedUser.txt','r+')
lines_locked = f_lockedUser.readlines()
count2 = 0
for j in lines_locked:
if user == j.strip('\n'):
count2 = 1
break
if count2 == 1:
print("该用户已锁定!")
break
elif pwd == element[2]:
print("Welcome " + user)
break
else:
print("密码错误,请重新输入密码。。")
count3 += 1
if count3 == 3:
f_lockedUser.write(user + '\n')
f_lockedUser.close()

2、三级菜单

data = {
'北京':{
"昌平":{
"沙河":["oldboy","test"],
"天通苑":["链家地产","我爱我家"]
},
"朝阳":{
"望京":["奔驰","陌陌"],
"国贸":{"CICC","HP"},
"东直门":{"Advent","飞信"},
},
"海淀":{},
},
'山东':{
"德州":{},
"青岛":{},
"济南":{}
},
'广东':{
"东莞":{},
"常熟":{},
"佛山":{},
},
}
exit_flag = False while not exit_flag:
for i in data:
print(i)
choice = input("选择进入1>>:")
if choice in data:
while not exit_flag:
for i2 in data[choice]:
print("\t",i2)
choice2 = input("选择进入2>>:")
if choice2 in data[choice]:
while not exit_flag:
for i3 in data[choice][choice2]:
print("\t\t", i3)
choice3 = input("选择进入3>>:")
if choice3 in data[choice][choice2]:
for i4 in data[choice][choice2][choice3]:
print("\t\t",i4)
choice4 = input("最后一层,按b返回>>:")
if choice4 == "b":
pass
elif choice4 == "q":
exit_flag = True
if choice3 == "b":
break
elif choice3 == "q":
exit_flag = True
if choice2 == "b":
break
elif choice2 == "q":
exit_flag = True

Python基础学习总结__Day1的更多相关文章

  1. Day1 Python基础学习

    一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...

  2. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  3. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

  4. Python 基础学习 总结篇

    Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...

  5. (一)python基础学习

    根据廖雪峰老师的python教程写一些学习总结! Python基础学习 1.使用list和tuple (1)list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时 ...

  6. python基础学习(起步)

    目录 python基础学习(起步) 变量 常量 变量的内存管理 python垃圾回收机制 变量的其他赋值方式 今日编程小题 本人能力有限,若有偏颇之处请读者大大不吝赐教! 祝大家每天都在成长! pyt ...

  7. Python基础学习二

    Python基础学习二 1.编码 utf-8编码:自动将英文保存为1个字符,中文3个字符.ASCll编码被囊括在内. unicode:将所有字符保存为2给字符,容纳了世界上所有的编码. 2.字符串内置 ...

  8. Python基础学习一

    Python基础学习一 1.变量与常量 变量名:大小写英文.数字.下划线的组合,数字不能开头 常量名:习惯上常量用大写字母命名,例如"PI" 2.多行输出 转义符:反斜杠(),如果 ...

  9. Python基础学习五

    Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...

随机推荐

  1. Cucumber 步骤中传Data Table作为参数

    引用链接:http://cukes.info/step-definitions.html Data Tables Data Tables are handy for specifying a larg ...

  2. chroot 的应用

    http://www.williamlong.info/archives/3864.html http://my.oschina.net/u/1590519/blog/342576

  3. 配置百度云盘python客户端bypy上传备份文件

    要求:安装python2.7,安装git 1.git clone https://github.com/houtianze/bypy.git 2.cd bypy 3.sudo python setup ...

  4. WPF根据数据项获取条目控件的方法-ItemContainerGenerator

    一.方法: ContainerFromIndex:返回 ItemCollection 中指定索引处的项的容器. ContainerFromItem:返回与制定的项对应的容器(ComboxItem等条目 ...

  5. 【前端】Chrome DevTools 笔记

    1. 查看网络耗时 timeline 生命周期按照以下类别显示花费的时间: Queuing Stalled 如果适用:DNS lookup.initial connection.SSL handsha ...

  6. 第2章 TCP-IP的工作方式

    第2章 TCP-IP的工作方式 TCP/IP协议系统 为了实现TCP的功能,TCP/IP的创建者使用了模块化的设计.TCP/IP协议系统被分为不同的组件,每个组件分别负责通信过程的一个步骤.这种模块化 ...

  7. vue实现选中列表功能

    <template> <div> <ul v-for="prop in items"> <dt>{{prop.name}}</ ...

  8. Android 使用greenDAO 3.2.2 操作外部数据库

    项目开发中有时需要用到一些写死的数据,如公司的产品信息之类的.这就需要我们先把数据库文件保存在资源文件夹下,然后当应用创建时将数据库文件拷到应用安装目录的/databases/文件夹下,然后再对数据进 ...

  9. 美国L-1A签证简介

    一. L-1A签证是美国非移民签证种类之一,主要发给外国跨国公司在美所设公司的高层管理人员.申请程序是先经美国移民局批准,美驻外使领馆凭移民局的批准函(I-797表)核发签证.移民局的批准函并不意味着 ...

  10. LeetCode Valid Parentheses 有效括号

    class Solution { public: void push(char c){ //插入结点 struct node *n=new struct node; n->nex=; n-> ...