python基础(3)-pycharm安装&for循环&format字符串&list列表&set集合使用
安装IDE(PyCharm)&破解
- 点击下载安装包,安装。
- 点击下载破解补丁。
- 进入pycharm安装bin目录,将破解补丁copy到当前目录。
- 在bin目录下找到pycharm.exe.vmoptions和pycharm64.exe.vmoptions文件,在其最后一行加上-javaagent:安装目录(例:-javaagent:C:\Program Files\JetBrains\PyCharm 2018.2.1\bin\JetbrainsCrack-3.1-release-enc.jar)
- 完成破解
字符串格式化
name = '张三'; age = 18; infoStr = '姓名:%s;年龄:%d'%(name,age); print(infoStr);#result:姓名:张三;年龄:18
for循环
#输出1-100之间的奇数
for i in range(1,100,2):#1:起始值 100:结束值 2:步长(含首不含尾)
print(i);
列表(list)
list[起始索引,终止索引,步长]:切片
letter_list = ['a', 'b', 'c']; print(letter_list[0]); # result:a print(letter_list[0:3]); # result:['a', 'b', 'c'] print(letter_list[3::-1]); # result:['c', 'b', 'a']
append():尾部追加
letter_list = ['a', 'b', 'c'];
letter_list.append('d');
print(letter_list); # result:['a', 'b', 'c', 'd']
insert():指定位置插入
letter_list = ['a', 'b', 'c']; letter_list.insert(2, 'c'); print(letter_list); # result:['a', 'b', 'c', 'c']
count():返回指定元素出现的次数
letter_list = ['a', 'b', 'c', 'c'];
count = letter_list.count('c');
print(count); # result:2
index():获取元素索引,有多个则返回第一个
letter_list = ['a', 'b', 'c', 'c'];
index = letter_list.index('c');
print(index); # result:2
pop():移除指定索引处元素并返回
letter_list = ['a', 'b', 'c', 'c']; element = letter_list.pop(2) print(letter_list); # result:['a', 'b', 'c'] print(element); # result:c
remove():移除指定元素,有多个则移除第一个
letter_list = ['a', 'b', 'c', 'c'];
letter_list.remove('c');
print(letter_list); # result:['a', 'b', 'c']
reverse():反转顺序
letter_list = ['a', 'b', 'c']; letter_list.reverse(); print(letter_list); # result:['c', 'b', 'a']
sort():排序
letter_list = ['b', 'a', 'c']; letter_list.sort(); print(letter_list); # result:['a', 'b', 'c']
extend():扩展
letter_list = ['b', 'a', 'c']; letter_list.extend(['d', 'e', 'f']); print(letter_list); # result:['b', 'a', 'c', 'd', 'e', 'f']
无序不重复集合(set)
列表去重
num_list = [1, 2, 2, 3, 3, 4]
print(set(num_list)) # result:{1, 2, 3, 4}
union()或'|':并集
num_set1 = {1, 2, 3, 4}
num_set2 = {3, 4, 5, 6}
print(num_set1 | num_set2) # result:{1, 2, 3, 4, 5, 6}
print(num_set1.union(num_set2)) # result:{1, 2, 3, 4, 5, 6}
intersection()或'&':交集
num_set1 = {1, 2, 3, 4}
num_set2 = {3, 4, 5, 6}
print(num_set1 & num_set2) # result:{3, 4}
print(num_set1.intersection(num_set2)) # result:{3, 4}
difference()或'-':差集
num_set1 = {1, 2, 3, 4}
num_set2 = {3, 4, 5, 6}
print(num_set1 - num_set2) # result:{1, 2}
print(num_set1.difference(num_set2)) # result:{1, 2}
print(num_set2.difference(num_set1)) # result:{5, 6}
symmetric_difference()或'^':对称差集(双方并集去除交集)
num_set1 = {1, 2, 3, 4}
num_set2 = {3, 4, 5, 6}
print(num_set1 ^ num_set2) # result: {1, 2, 5, 6}
print(num_set1.symmetric_difference(num_set2)) # result: {1, 2, 5, 6}
update()或'|=':并集并赋值
num_set1 = {1, 2, 3, 4}
num_set2 = {3, 4, 5, 6}
num_set1.update(num_set2)
# 或 num_set1 |= num_set2
print(num_set1) # result:{1, 2, 3, 4, 5, 6}
print(num_set2) # result:{3, 4, 5, 6}
intersection_update或'&=':交集并赋值
num_set1 = {1, 2, 3, 4}
num_set2 = {3, 4, 5, 6}
num_set1.intersection_update(num_set2)
# 或 num_set1&=num_set2
print(num_set1) # result:{3, 4}
print(num_set2) # result:{3, 4, 5, 6}
symmetric_difference_update()或'^=':并集去除交集并赋值
num_set1 = {1, 2, 3, 4}
num_set2 = {3, 4, 5, 6}
num_set1.symmetric_difference_update(num_set2) # result:{1, 2, 5, 6}
# 或 num_set1 ^= num_set2
print(num_set1)
add():添加
num_set1 = {1, 2, 3, 4}
num_set1.add(5)
print(num_set1) # result:{1, 2, 3, 4, 5}
remove():移除,不存在引发keyError
num_set1 = {1, 2, 3, 4}
num_set1.remove(2)
print(num_set1) # result:{1, 3, 4}
discard():存在则移除
num_set1 = {1, 2, 3, 4}
num_set1.discard(2)
print(num_set1) # result:{1, 3, 4}
pop():随机删除并返回
num_set1 = {1, 2, 3, 4}
removeItem = num_set1.pop()
print(num_set1) # result:{2, 3, 4}
print(removeItem) # result:1
clear():清空
num_set1 = {1, 2, 3, 4}
num_set1.clear()
print(num_set1) # result:set()
练习
购物车
salary = 10000;
trade_list = ['iphone6s','mac book','coffee','python book','bicyle'];
amount_list = [5300,9000,32,80,1500];
print('余额:%s元'%(salary));
print('商品列表:');
index = 0;
for trade in trade_list:
index += 1;
print('%d:%s %d元'%(index,trade,amount_list[index-1]));
while True:
sort_num = int(input('输入要够买的产品的序号:'));
if sort_num>trade_list.__len__() or sort_num <= 0:
print('输入的序号不存在!')
continue;
price = amount_list[sort_num-1];
if salary > price:
salary = salary - price;
print('购买成功,当前余额:%d'%(salary));
else:
print('余额不足,购买失败,当前余额:%d'%(salary));
choose = input('是否退出?(确认输入Y)');
if choose == 'Y':
print('退出成功!')
break;
扩展
判断一个字符串是不是一个数字(string.isdigit())
a = 'a'; print(a.isdigit());#result:False a = '; print(a.isdigit());#result:True
python基础(3)-pycharm安装&for循环&format字符串&list列表&set集合使用的更多相关文章
- python基础(5)---整型、字符串、列表、元组、字典内置方法和文件操作介绍
对于python而言,一切事物都是对象,对象是基于类创建的,对象继承了类的属性,方法等特性 1.int 首先,我们来查看下int包含了哪些函数 # python3.x dir(int) # ['__a ...
- python基础语法3 整形,浮点,字符串,列表
整形: ========================基本方法===========================用途: 一般用于定义整数:年龄.身份证号.qq号定义方式:age = 18 # a ...
- 《python基础教程(第二版)》学习笔记 列表/元组(第2章)
<python基础教程(第二版)>学习笔记 列表/元组(第2章)序列中的下标从0开始x='ABC' ==> x[0]='A', x[1]='B', x[2]='C'负数索引从右边开始 ...
- Python 高效编程技巧实战(2-1)如何在列表,字典, 集合中根据条件筛选数据
Python 高效编程技巧实战(2-1)如何在列表,字典, 集合中根据条件筛选数据 学习目标 1.学会使用 filter 借助 Lambda 表达式过滤列表.集合.元组中的元素: 2.学会使用列表解析 ...
- python基础一(安装、变量、循环、git)
一.开发语言分类 系统的开发语言有java.c++.c#.python.ruby.php等等,开发语言可分为编译型语言和解释型语言. 编译型语言就是写好代码之后就把代码编译成二进制文件,运行的时候运行 ...
- Python、pywin32&pycharm安装记录
未完待续-- Python 下载安装 1.百度搜索Python,进入官网,download,下载相应版本 [因为我们需要用到的是Windows下的解释器,所以在Operating System中可以选 ...
- python基础知识--条件判断和循环
一.输入输出 python怎么来接收用户输入呢,使用input函数,python2中使用raw_input,接收的是一个字符串,输出呢,第一个程序已经写的使用print,代码入下: 1 name=in ...
- python学习第四讲,python基础语法之判断语句,循环语句
目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...
- python基础===利用PyCharm进行Python远程调试(转)
原文链接:利用PyCharm进行Python远程调试 背景描述 有时候Python应用的代码在本地开发环境运行十分正常,但是放到线上以后却出现了莫名其妙的异常,经过再三排查以后还是找不到问题原因,于是 ...
随机推荐
- 学习笔记:The Log(我所读过的最好的一篇分布式技术文章)
前言 这是一篇学习笔记. 学习的材料来自Jay Kreps的一篇讲Log的博文. 原文非常长.可是我坚持看完了,收获颇多,也深深为Jay哥的技术能力.架构能力和对于分布式系统的理解之深刻所折服.同一时 ...
- 三层构架和 MVC的区别和理解
1.三层构架和 MVC 意思一样么? Java WEB 开发中,服务端通常分为表示层.业务层.持久层,这就是所谓的三层架构: 1.表示层负责接收用户请求.转发请求.生成数据的视图等: 2.业务层负责组 ...
- linux系统下键盘按键的重新映射——xmodmap工具和xev工具
大家会不会有时候,感觉键盘上的某几个键用起来不是很方便,打字打久了很容易手指头疼呢? 例如大家使用vim编辑器时, 经常需要使用到esc键,而该键在左上角,很不方便的.再比如写程序的时候,经常会使用到 ...
- 遍历一个Set的方法只有一个:迭代器(interator)。
Set-HashSet实现类: 遍历一个Set的方法只有一个:迭代器(interator). HashSet中元素是无序的(这个无序指的是数据的添加顺序和后来的排列顺序不同),而且元素不可重复. 在O ...
- [ java 工具类] xml字符串解析成Map(DOM解析)
package com.tencent.jungle.wechat.util; import com.google.inject.Singleton; import org.w3c.dom.Docum ...
- IntelliJ IDEA创建web项目
Intellij IDEA 创建Web项目并在Tomcat中部署运行 一.创建Web项目 1.File -> New Module,进入创建项目窗口 2.选择Java类型,在 Module na ...
- Linux常见问题整理
1. 操作系统应该要控制硬件的哪些单元? 运算单元.控制单元.寄存器组.总线接口单元.输入/输出接口单元. 2. 一个较为完整的操作系统应该包含哪些部分? 比较完整的操作系统应该包含两个组件,一个是核 ...
- Centos7 Crontab
Centos7 Crontab # 查看crontab -l # 编辑 crontab -e # 重启 service crond restart ccrontab 编写规则 # 分 时 日 月 周 ...
- Javascript 运行上下文和作用域链
一.作用域Scope和上下文Context 在javascript中,作用域scope和上下文context是两个不同的概念.每个函数调用都会伴随着scope和context,从本质上来说,scope ...
- Qt编写自定义控件属性设计器
以前做.NET开发中,.NET直接就集成了属性设计器,VS不愧是宇宙第一IDE,你能够想到的都给你封装好了,用起来不要太爽!因为项目需要自从全面转Qt开发已经6年有余,在工业控制领域,有一些应用场景需 ...