C++程序员学Python
C++程序员学Python
开个新坑hhh,为了摸游戏AI,学了点Py,做了点笔记。
第二章.变量和数据类型
1.注释语句前用#:
#这是注释
如果加入注释后报错就在文件开头加一条
#coding:utf-8
2.常用于大小写函数:
- upper() : 全大写
- lower() : 全小写
- title() : 首字母大写
如:
print('am'.upper())
输出:AM
清除字符串空白函数:
- lstrip()--rstrip():对应清除左/右空白
- strip():清除两边空白
字符串用+合并,数字变字符串用str(number),字符串既可用双引号 '' ,也可用单引号 '
如:
print("He has "+str(10)+' apples.')
变量名只能包含字母,数字,下划线,可以以字母和下划线开头,不能以数字开头,避免用关键字命名
第三章.列表
1.列表简述
类似数组,内容可修改
names=['AM','Hong','ZL']
print(names) #['AM','Hong','ZL']
print(names[0]) #AM
print(names[-1]) #ZL
#从0递增为正序,以-1递减为逆序
2.修改,增加,插入,删除列表元素
Games=['GTA','LOL','CS']
Games[0]='GTA5' #修改列表元素,['GTA5','LOL','CS']
Games.append('COC') #在列表末尾增加元素,['GTA5','LOL','CS','COC']
Games.insert(0,'WOW') #在列表第n处插入元素,['WOW','GTA5','LOL','CS','COC']
del Games[0] #直接删除列表第n个元素
game=Games.pop(3) #删除第n个元素并且返回值为该元素
Games.remove('CS') #删除在列表中第一个值为'xx'的元素
第四章操作列表
1.遍历
格式:for+变量名+in+列表+':'
仅循环体里面的内容需要缩进
Prices=[1,2,3]
for Price in Prices:
print(Price)
print(Price*2)
2.创建数值列表
range(x,n) : 生成从x开始到n-1为止的一串数字
range(x,n,a) : 生成从x开始到n-1为止,间隔大小为a的一串数字
min(列表名),max(列表名),sum(列表名) :可快速找出或算出常用数字
Price=list(range(1,4)) #相当于[1,2,3]
#可用list将range生成的一串数字变成列表
Prices=[]
for value in range(1,4):
price=value**2
Prices.append(price)
Prices=[value**2 for value in range(1,4)]
#上面两个列表是一样的,只是后者采用了列表解析,使得步骤简化
3.使用列表的一部分
切片的使用:'(' + 列表名+[number_1 : number_2] + ')' #用于复制列表
- number_1和number_2不填分别代表从列表首位开始和到末位结束
- number_1 : 从索引为number_1的数开始
- number_2 : 复制接下来的总共number_2个数
Players=['AM','BM','CM','DM','EM']
New_Players=[]
print(Players[0:3])
print(Players[:3]) #均输出['AM','BM','CM']
print(Players[2:])
print(Players[-3:]) #均输出['CM','DM','EM']
print(Players[:])
print(Players) #均输出['AM','BM','CM','DM','EM']
New_Players=Players #使New_Players也指向Players的列表,二者指向同一个
New_Players=(Players[:]) #使New_Players指向一个和Players的列表一样的新列表,二者分别指向各自的
4.元组
格式:列表名=(列表元素。。。)
用法与列表类似,但不同的是元组内容不可修改,且是括号
game=('GTA5','Gta6')
game[0]='GTA4' #修改元组,非法,会报错
game=('GTA6','Gta7') #直接给元组变量赋值,合法
print(game)
第五章if语句
- if else后面条件判断结束时需加上 ':' 冒号,下面缩进的代码当条件成立时均会执行
- ' else if ' 在python中变成了 ' elif ',else语句可省略,也可直接多条if语句而不用其他二者
- '&&' 和 '||' 在python 中分别变成了 'and' 和 'or' , '==' 与 '!=' 仍存在
Players=['AM','BM','CM','DM','EM']
Players2=[]
if Players:
for player1 in Players:
if player1 == 'AM':
print(player1)
elif player1 == 'BM': #elif语句可以不止一条
print(player1)
else:
print(player1+'.')
if 'AM' in Players: #检测特定值在不在列表中
print('AM')
for player2 in Players:
if player2 not in Players2:
print(player2)
num1=12
num2=24
if num1==12 and num2==23: #and需要二者均成立,而该条件不为真
print('right1')
if num1==12 or num2==23: #or只需要二者中一者成立,则该条件为真
print('right2')
转载标明出处:作者AMzz 博客: https://www.cnblogs.com/AMzz/
C++程序员学Python的更多相关文章
- 【C++程序员学 python】python 之变量
既然学过C++,那么就应该知道变量是什么,常量是什么. python 相比于C++,在使用变量之前不用先声明. 而是直接使用,python 会根据你的变量自动识别其类型. 假如a = 123 那么a ...
- 【C++程序员学 python】python 的文件类型
python的文件类型主要分为3种,分别是源代码.字节代码和优化代码.这些代码都可以直接运行,不需要进行编译或者连接.这正是python语言的特性,python的文件通过python.exe 或pyt ...
- 【C++程序员学 python】python 之奇葩地方
一.python 奇葩之一:没有花括号.没有分号 先来一个C类型的函数 void main() { int i = 0; for(int j = 0; j< 6;j++) { i = i +j; ...
- 【C++程序员学 python】python 之helloworld
我学习C语言之后才学的C++,所以这里写一个简单的helloworld程序. #coding:utf-8 def main(): print "hello world" if __ ...
- 【C++程序员学 python】python split and join 分割与合并
感觉这名字有点不对,但不知道用什么好,就将就吧. 坑爹啊,居然要把符号放在前面.
- 给Lisp程序员的Python简介
给Lisp程序员的Python简介 作者:Peter Norvig,译者:jineslong<zzljlu@gmail.com> 这是一篇为Lisp程序员写的Python简介(一些Pyth ...
- .Net程序员学用Oracle系列(1):导航目录
本人从事基于 Oracle 的 .Net 企业级开发近三年,在此之前学习和使用的都是 (MS)SQL Server.未曾系统的了解过 Oracle,所以长时间感到各种不习惯.不方便.怪异和不解,常会遇 ...
- .Net程序员学用Oracle系列(2):准备测试环境
<.Net程序员学用Oracle系列:导航目录> 本文大纲 1.创建说明 1.1.为什么要创建的测试环境? 1.2.了解 Oracle 实例的默认用户 2.创建环境 2.1.创建基本环境 ...
- .Net程序员学用Oracle系列(6):表、字段、注释、约束、索引
<.Net程序员学用Oracle系列:导航目录> 本文大纲 1.表 1.1.创建表 1.2.修改表 & 删除表 2.字段 2.1.添加字段 2.2.修改字段 & 删除字段 ...
随机推荐
- 主动降噪(Active Noise Control)
智能耳机 人机交互 智能声学终端 智能耳机 智能音箱 智能听力器 喇叭单体 动圈喇叭 新材料 DLC 石墨烯 陶瓷单位 吸音材料 智能芯片 阵列式麦克风 声纹传感器 演算法 降噪算法 智能听力保护 A ...
- 玩转ADB命令(ADB命令使用大全)转载
ADB是什么 Adb的全称为Android Debug Bridge:android调试桥梁,下图为Android官方对adb的介绍:可以看出,Android的初衷是用adb这样的一个工具来协助开发人 ...
- selenium3与Python3实战 web自动化测试框架 ☝☝☝
selenium3与Python3实战 web自动化测试框架 selenium3与Python3实战 web自动化测试框架 学习 教程 一.环境搭建 1.selenium环境搭建 Client: py ...
- Vue中插槽指令
08.29自我总结 Vue中插槽指令 意义 就是在组件里留着差值方便后续组件内容新增 而且由于插件是写在父级中数据可以直接父级中传输而不需要传子再传父有些情况会减少写代码量 示例 <div id ...
- Jenkins介绍
持续集成: 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证 ...
- 实验吧之【因缺思汀的绕过】(group by with rollup的注入利用)
打开页面,查看源代码,发现存在source.txt(http://ctf5.shiyanbar.com/web/pcat/source.txt),如下: <?php error_reportin ...
- PHP array_product
1.函数的作用:计算数组元素的乘积 2.函数的参数: @params array 3.例子: <?php $input = [false,true]; print_r(array_product ...
- PHP 插入排序 -- 折半查找
1. 折半查找 -- Binary Insertion Sort 时间复杂度 : O(n^2) 适用条件 : 相对直接插入排序,减少了数值的比较次数.适用于需要排序的数码比较少的情况. <?p ...
- [USACO17FEB]Why Did the Cow Cross the Road III S
题目描述 Why did the cow cross the road? Well, one reason is that Farmer John's farm simply has a lot of ...
- Async,Await和ConfigureAwait的关系
[转自]https://mp.weixin.qq.com/s/h10V-FshGoaQUWFPfy-azg 在.NET Framework 4.5中,async / await关键字已添加到该版本中, ...