python 01篇
一、Pycharm 使用小tips
1.1 pycharm创建项目时,选择Python环境,不使用默认的虚拟环境
1.2 如何在pycharm中查看python版本
路径:File-Settings-Project Interpreter
1.3 修改pycharm中的字体
路径:File-Settings-Editor--Front
1.4 配置pycharm可使用Ctrl+鼠标滚轮切换字体大小
路径:File-Settings-General 勾选Change front size (Zoom) with Ctrl+Mouse Wheel
1.5 pycharm配置git
路径:VCS-Get from Version Control ,输入git仓库地址
1.6 pycharm快捷键
编辑类:
Ctrl + D 复制选定的区域或行
Ctrl + Y 删除选定的行
Ctrl + Alt + L 代码格式化
Ctrl + Alt + O 优化导入(去掉用不到的包导入)
Ctrl + 鼠标 简介/进入代码定义
Ctrl + / 行注释 、取消注释
Ctrl + 左方括号 快速跳到代码开头
Ctrl + 右方括号 快速跳到代码末尾
Shift + F10 运行
Shift + F9 调试
查找/替换类:
Ctrl + F 当前文件查找
Ctrl + R 当前文件替换
Ctrl + Shift + F 全局查找
Ctrl + Shift + R 全局替换
运行类:
Shift + F10 运行
Shift + F9 调试
Alt + Shift + F10 运行模式配置
Alt + Shift + F9 调试模式配置
调试类:
F8 单步调试(一行一行走)
F7 进入内部
Shift + F8 退出
Ctrl + F8 在当前行加上断点/断点开关
Ctrl + Shift + F8 查看所有断点
导航类:
Ctrl + N 快速查找类(也可查找当前工程中的文件,以文件名查找)
Double Shift 任意位置查找
二、Python知识点
2.1 定义变量
name = "小黑" # 字符串 str
age = 18 # 整数类型 int
score = 97.5 # 浮点型 float words = " let'go "
words2 = ' tom very "shy" ' #
words3 = ''' let'go,tom very "shy" '''
print(words)
print(words2)
print(words3) # bool 布尔类型 True 真 False 假
l = [1, 2, 3, 4]
print(1 > 2)
print(4 in l)
print(1 not in l)
print(len(l) > 3)
2.2 条件判断
'''
判断条件为真时,执行该部分代码逻辑
使用 if或if else或if elif else或 嵌套if else等
判断中用的比较运算,> < >= <= != ==
'''
score = input('请输入你的分数:') # input接受到的全都是str
score = int(score)
# print('score的类型',type(score)) #查看类型函数type(val)
if score >= 90:
print('优秀')
elif score < 90 and score >= 75:
print('良好')
elif score >= 60 and score < 75:
print('及格了')
else:
print('不及格')
2.3 循环
循环包括for和while,一般迭代和遍历会用到。
break:立即结束循环,不管你剩余多少次没有循环
continue:结束本次循环,继续进行下一次循环
循环对应的else:
①循环正常结束循环后,会执行else里面的代码
②else不是必须写的
while循环必须指定结束条件,否则会死循环
count = 0 # 计数器
rate = 140 # 心率
while count < 10:
if rate > 160:
break #break 循环里遇到break循环立即结束 print('跑圈',count)
count = count + 1
rate += 5 # rate = rate + 5
count = 0 # 计数器
while count < 10:
print('循环', count)
count = count + 1
else:
print('当循环%d次时,执行else语句' % count)
for 循环:不需要计数器,也不会死循环
rate = 130
for count in range(8):
print('跑圈', count)
if rate > 160:
print('你的心跳太快了,强制休息')
break
rate += 5
else: # 只要for循环不是break提前结束的,都会执行else
print('for对应的else')
循环练习
#写一个小游戏
#猜数字有戏
# 1.最多输入7次,如果猜的不对,提示它大了还是小了,猜对了游戏结束,如果次数用尽了还没有猜对,提示已经达到次数 import random
number = random.randint(1, 100) #生成一个1~100内的随机整数
for i in range(7):
guess = int(input('输入您猜的数据:'))
if guess == number:
print('恭喜你,猜对了')
break
elif guess > number:
print('猜的大了')
continue
else:
print('猜的小了')
continue
else:
print('您的次数用尽了,请下次再参与游戏')
2.4 字符串格式化
方式1:直接 + 不推荐使用
方式2:占位符 %s %d %f
%s 占位str %d 占位int %f 占位float 其中%.2f 代表保留2位小数
方式3:{}占位 适用于参数比较多的时候,可以对应
import datetime
name = 'marry'
welcome = 'marry,welcome'
today = datetime.datetime.today()
#字符串格式化:
#1.简单粗暴直接 +
print(name + ',欢迎登陆。今天的日期是'+ str(today)) #不推荐
#2.占位符,%s %d %f %s 占位str %d 占位int %f 占位float 其中%.2f 代表保留2位小数
welcome = '%s,欢迎登陆' % name
welcome1 = '%s,欢迎登陆,今天的日期是 %s' % (name,today) #有多个占位符时,要加()
print(welcome)
age = 18
age_str = '你的年龄是%d' % age #这里也可以用%f,不过会有小数
score = 85.789
info = '你的年龄是%d,你的成绩是%.2f' % (age, score)
print(age_str)
print(info) #3.大括号的方式 适用于参数比较多的时候,可以对应
welcome2 = '{name},欢迎登陆.今天的日期是{today}'.format(today=today, name=name) #如果{}中加了名字,可以使用名字对应,不应按照顺序传参
welcome3 = '{},欢迎登陆.今天的日期是{}'.format(name, today)
welcome4 = '{},欢迎登陆.今天的日期是{}'.format(today, name) #如果{}中没有加名字,就是%s一样的效果,必须按照顺序传参
print(welcome2)
print(welcome3)
print(welcome4)
2.5 列表 list
#数组/列表 list
student_new = ['张三', '李四', 'wangwu'] #定义一个列表
stu_list = [] # 定义一个空列表 # 取值 索引/下标/角标,从list中取出来 list_name[index]
print(student_new[-1]) #取最后一个元素
print(student_new[0]) #取第一个元素
print(student_new[1]) #往list中增元素
student_new.append('张明') #在列表的末尾添加元素
student_new.insert(0, 'yangyang') #在列表的指定位置添加元素 #修改 找到指定元素后修改
student_new[2] = '黄丽'
#删除
student_new.pop(3) #传入指定的下标
student_new.remove('yangyang') #使用remove方法可以传元素的值
del student_new[0]
student_new.clear() #清空列表 此方法无返回值 #其他方法
hy_count = student_new.count('张三') #统计这个list里面某个元素出现的次数(有返回值),常用于判断元素是否存在
print(hy_count)
hy_index = student_new.index('张三') #找到list中某个元素的下标,如果同一元素有多个,返回第一次出现时的索引
print('hy_index=',hy_index)
users = ['张三', '李珊']
student_new.extend(users) #把一个列表里面的元素加入另一个列表里面
print(student_new) numbers = [1, 25, 3, 95, 102, 4]
numbers.sort() #默认升序排序
print(numbers)
numbers.sort(reverse=True) # 降序排序
print(numbers)
#多维数组 数组套数组
student_info = [
[1, 'lhy', '北京'],
[2, 'hzy', 'shanghai'],
[3, 'lhh', '天津']
]
#二维数组
student_info2 = [
[1, 'lhy', '北京', ['bmw', 'benz', 'aodi']],
[2, 'hzy', 'shanghai'],
[3, 'lhh', '天津']
]
#一层层去找要操作的数据即可
student_info[0][2] = '山东'
student_info2[0][-1] .append('tesla') print(student_info)
print(student_info2)
python 01篇的更多相关文章
- 【Python五篇慢慢弹(4)】模块异常谈python
模块异常谈python 作者:白宁超 2016年10月10日12:08:31 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给出的pythondo ...
- (转载)Python一篇学会多线程
Python 一篇学会多线程 链接:https://www.cnblogs.com/yeayee/p/4952022.html 多线程和多进程是什么自行google补脑,廖雪峰官网也有,但是不够简洁 ...
- Python入门篇-封装与解构和高级数据类型集合(set)和字典(dict)
Python入门篇-封装与解构和高级数据类型集合(set)和字典(dict) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.封装和结构 #!/usr/bin/env pytho ...
- Python基础篇(格式化输出,运算符,编码):
Python基础篇(格式化输出,运算符,编码): 格式化输出: 格式:print ( " 内容%s" %(变量)) 字符类型: %s 替换字符串 %d 替换整体数字 ...
- 【Python五篇慢慢弹】快速上手学python
快速上手学python 作者:白宁超 2016年10月4日19:59:39 摘要:python语言俨然不算新技术,七八年前甚至更早已有很多人研习,只是没有现在流行罢了.之所以当下如此盛行,我想肯定是多 ...
- 【Python五篇慢慢弹】数据结构看python
数据结构看python 作者:白宁超 2016年10月9日14:04:47 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给出的pythondoc ...
- 【Python五篇慢慢弹(3)】函数修行知python
函数修行知python 作者:白宁超 2016年10月9日21:51:52 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给出的pythondoc ...
- 【Python五篇慢慢弹(5)】类的继承案例解析,python相关知识延伸
类的继承案例解析,python相关知识延伸 作者:白宁超 2016年10月10日22:36:57 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给 ...
- python基础篇-day1
python基础篇 python是由C语言写的: pass 占位符: del,python中全局的功能,删除内存中的数据: 变量赋值的方法: user,pass = 'freddy','freddy1 ...
随机推荐
- 对狂神说java的springboot中spring security的总结
1.spring security的环境搭建 首先新建一个springboot项目,只够选web中的spring web依赖 然后在pom.xml导入相关依赖 <!--thymeleaf模块-- ...
- CAP理论之思考
分布式系统的最大难点就是各个节点如何保持一致.最近我在工作中就遇到这样的问题,不同节点之间,彼此通过API,进行通信,交互数据,但有些服务节点存在延迟等问题,导致我看到的并不是实时的数据,以及系统更新 ...
- 使用现代C++如何避免bugs(下)
使用现代C++如何避免bugs(下) About virtual functions Virtual functions hinder a potential problem: the thing ...
- 目标检测数据集The Object Detection Dataset
目标检测数据集The Object Detection Dataset 在目标检测领域,没有像MNIST或Fashion MNIST这样的小数据集.为了快速测试模型,我们将组装一个小数据集.首先,我们 ...
- ContOS8 使用yum安装MariaDB
首先全部删除MySQL/MariaDB(若是首次安装可根据需要跳过此步) 若不清楚MySQL和MariaDB的关系请移步至 Mariadb百科 1.查看系统版本(以下任一命令即可). # cat /p ...
- Spring Cloud系列(五):服务网关Zuul
在前面的篇章都是一个服务消费者去调用一个服务提供者,但事实上我们的系统基本不会那么简单,如果真的是那么简单的业务架构我们也没必要用Spring Cloud,直接部署一个Spring Boot应用就够了 ...
- springboot静态资源映射规则
一.所有/webjars/**的请求,都会去classpath:/META-INF/resources/webjars/下的目录去找资源. 二.访问/**,即访问任何资源,如果没有controller ...
- 【转】【NX二次开发】UFUN进度中断,单击停止可中断此操作
队长的博客: https://www.cnblogs.com/nxopen2018/p/13174207.html 显示此对话框,点击可中断操作: 用到的ufun函数: UF_ABORT_ask_fl ...
- Java双重循环
在实际开发中我们常常遇到这样的问题,有A.B两个集合,这两个集合的某一个字段是相同的,要把A集合和B进行匹配,然后把A的值赋值给B例如: //上传图片 List<MultipartFile> ...
- 【模板】 RMQ求区间最值
RMQ RMQ简单来说就是求区间的最大值(最小值) 核心算法:动态规划 RMQ(以下以求最大值为例) F[i,j]表示 从 i 开始 到i+2j -1这个区间中的最大值 状态转移方程 F[i,j]=m ...