一、数据类型
1、数字
  • int(整型)
  • long(长整型)
  • float(浮点型)
  • complex(复数)
2、布尔值
  •  True或False
3、字符串
 
二、变量
变量命名规则:
  • 变量名只能是 字母、数字或下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 变量名不能为关键字(例如:and,or,continue,break,in,else,print 等)
 
三、字符串拼接
1、使用加号(+)
name = "Tom"
age = 25
print(name + "s age is " + str(age)) #输出:Toms age is 25

2、字符串格式化

name = "Tom"
age = 25
print("%s's age is %d" % (name,age) ) #输出:Toms age is 25

ps:在python中,使用+号连接字符串,每出现一个+号,就要重新在内存中申请一块空间,有多少个+号,就要申请多少块空间。一般不建设使用+号连接字符串。

四、列表和元组

1、列表(list)

  • 创建列表
str_list = ['Tom','Lucy','Mary']
或者
str_list = list(['Tom','Lucy','Mary'])
  • 索引(访问列表中某一个值)
str_list[0]
  • 追加(增加元素到末尾)
str_list.append('lilei')
print(str_list) #输出:['Tom', 'Lucy', 'Mary', 'lilei']
  • 插入(在指定位置加入元素)
str_list.insert(1,'lilei')
print(str_list) #输出:['Tom', 'lilei', 'Lucy', 'Mary']
  • 删除(删除指定元素)
str_list.remove('Lucy')
print(str_list) #输出:['Tom', 'Mary']
  • 切片
str_list = [3,4,5,6,7,8,9]
new_1 = str_list[1:3] #从索引1开始取,取到索引3
new_2 = str_list[0:6:2] #从索引0开始取,每两位一取,到第6位为止
new_3 = str_list[-2:] # 取后面2个数
new_4 = str_list[:3] # 取前面3个数
new_5 = str_list[::3] #所有数,每3个取一个 print(new_1,new_2,new_3,new_4,new_5) #输出:[4, 5] [3, 5, 7] [8, 9] [3, 4, 5] [3, 6, 9]

2、元组(tuple)

  • 创建元组
age = (18,25,33)
或者
age = tuple((18,25,33))

除了不能修改、增加、删除元素,其它操作元组和列表几乎一样。

 五、字典

使用key-value的存储方式

  • 创建字典
phone = {
'张三':'',
'李四':'',
'王五':'',
}
  • 获取字典中key的值
print(phone['张三'])      #如果key不存在,会报错,key用中括号装
print(phone.get('老黄')) #如果key不存在,返回None,key用小括号装 #输出:13075632152
# None
  • 赋值
phone['老黄'] = ''   #新增
phone['张三'] = '' #修改
print(phone) #输出:{'王五': '13420321523', '老黄': '13678623153', '张三': '12300055555', '李四': '15732015632'}
#因为字典是无序的,所以每次输出的排列顺序都可能不同
  • 删除
phone.pop('张三')   #第一种方法
del phone['李四'] #第二种方法
phone.popitem() #随机删除某一个
  • 遍历
for key in phone:
print(key,phone[key]) #输出:
# 王五 13420321523
# 张三 13075632152
# 李四 15732015632
  • 多级嵌套
phone = {
'人事部':{'老张':'','老李':''},
'财务部':{'小丽':'','小映':''},
'技术部':{'老罗':''}
} print(phone['人事部']['老李']) #输出:13432023152

六、if语句

1、if...else

age = 16
if age <18:
print('你还未成年呢')
else:
print('你已经成年了')

2、if...elif....else

score = 85
if score > 0 and score< 60:
print('你的成绩不及格')
elif score >= 60 and score <80:
print('你的成绩及格了')
elif score>=80 and score<90:
print('你的成绩良好')
else:
print('你的成绩优秀')

七、while循环

i=0
num=0
while i<=100:
num+=i
i+=1
print('1-100累加等于%d'%num)

八、for...in循环

num = []
for i in range(10):
num.append(i)
print(num) #输出:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

九、用户交互(input)

import getpass
username = input("username:")
password = getpass.getpass("password:")
print(username)
print(password)

十、文件基本操作

打开文件:f = open('文件路径','模式')    或者   with open('文件路径','模式') as f:

模式:

  • r:以只读方式打开文件
  • w:打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
  • a:打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
  • w+:打开一个文件用于读写。(文件一打开就清空了,还能读到东西吗?)
  • a+:打开一个文件用于读写。

读文件:

read()  readlines()  readline() 的用法

f = open('d:/test.txt','r')  #以只读方式打开文件

print(f.read())  #read()一次读取文件的全部内容

for line in f.readlines():   #readlines()读取整个文件,并按行存进列表
print(line.strip('\n')) #去掉行尾的'\n' while 1:
line = f.readline() #readline()每次只读取一行
print(line.strip('\n'))
if not line:
break f.close() #关闭文件

写文件:

f =open('d:/test.txt','a')
f.write('hello,boy!\n')
f.close()

python3基础知识梳理的更多相关文章

  1. [SQL] SQL 基础知识梳理(一)- 数据库与 SQL

    SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...

  2. [SQL] SQL 基础知识梳理(二) - 查询基础

    SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...

  3. [SQL] SQL 基础知识梳理(三) - 聚合和排序

    SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...

  4. [SQL] SQL 基础知识梳理(四) - 数据更新

    SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...

  5. [SQL] SQL 基础知识梳理(五) - 复杂查询

    SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...

  6. Anliven - 基础知识梳理汇总 - 软件测试

    基础知识梳理 - 软件测试 - 概念 基础知识梳理 - 软件测试 - 分类 基础知识梳理 - 软件测试 - 流程 基础知识梳理 - 软件测试 - 用例 基础知识梳理 - 软件测试 - 方法 基础知识梳 ...

  7. [C# 基础知识梳理系列]专题六:泛型基础篇——为什么引入泛型

    引言: 前面专题主要介绍了C#1中的2个核心特性——委托和事件,然而在C# 2.0中又引入一个很重要的特性,它就是泛型,大家在平常的操作中肯定会经常碰到并使用它,如果你对于它的一些相关特性还不是很了解 ...

  8. java基础知识梳理

    java基础知识梳理 1 基本数据类型

  9. C#基础知识梳理索引

    C#基础知识梳理索引 一 引子 之前曾写了一篇随笔<.NET平台技术体系梳理+初学者学习路径推荐+我们的愿景与目标> 三个月过去了,目标使更多的编程初学者,轻松高效地掌握C#开发的基础,重 ...

随机推荐

  1. 为Spring Cloud Config插上管理的翅膀

    最近一致在更新Spring Cloud Config的相关内容,主要也是为这篇埋个伏笔,相信不少调研过Spring Cloud Config的用户都会吐槽它的管理能力太弱.因此,就有了下面为讲推荐的这 ...

  2. Runtime详解(上)

    这篇关于Runtime讲解参考https://juejin.im/post/593f77085c497d006ba389f0以及https://www.jianshu.com/p/6ebda3cd80 ...

  3. [转]VirtualBox安装CentOS7

    本文转自:http://www.cnblogs.com/xyinjie/p/9437049.html 一:.下载CentOS7的镜像 下载地址:https://www.centos.org/downl ...

  4. ____利用C#特性Attribute完成对sql语句的拼接

    //定义 特性类: public class MyAttribute : Attribute//自定义注解类判断是否是主键 { public bool PrimaryKey = false; publ ...

  5. linux中make的用法

    一.linux中make的用法 目的:       基本掌握了make 的用法,能在Linux系统上编程.环境:       Linux系统准备:       准备三个文件:file1.c, file ...

  6. thinkphp 3.2 去除调试模式后报错,怎么解决

    1.案例一: 最近用ThinkPHP开发一个项目,本地开发测试完成上传到服务器后,第一次打开正常,再刷新页面时就出现 “页面调试错误,无法找开页面,请重试”的错误. 我就郁闷啦,明明本地设置defin ...

  7. 发现一个微博图床API和图片上传代码

    网上寻到一款微博图床的插件,然后顺藤摸瓜找到了原作者的API代码. API文件: <?php /** * 上传图片到微博图床 * @author Youngxj & mengkun &a ...

  8. blfs(systemd版本)学习笔记-为桌面环境构建xorg服务

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! lfs准备使用桌面环境,首先需要构建xorg服务 xorg服务项目地址:http://www.linuxfromscratch. ...

  9. [转]原生JS-查找相邻的元素-siblings方法的实现

    在针对element的操作里,查找附近的元素是一个不可少的过程,比如在实现tab时,其中的一个div增加了“on”class,其他的去除“on”class.如果用jquery的朋友就肯定不会陌生sib ...

  10. Apache Beam WordCount编程实战及源码解读

    概述:Apache Beam WordCount编程实战及源码解读,并通过intellij IDEA和terminal两种方式调试运行WordCount程序,Apache Beam对大数据的批处理和流 ...