python语法基础-基础-变量和数据类型
############### 第一个python程序 ###############
print("hello python") # 打印hello python # 分析这么一句代码:
# 1,print是一个函数,
# 2,双括号是指函数的调用,
# 3,hello python是我们传递的数据,
# 4,双引号表示这是一个字符串,
# 5,#号后面是注释,
# 6,python代码区分大小写,Print(),这种就不行,
# 7,python是严格对齐的,前面不能有空格
################
# 三引号使用
# print("""hello
# python""") # 这是换行的字符串
# 多行注释也可以使用三引号
"""
多行注释
"""
############### 常量变量,标识符关键字 ###############
num=13
num=input("请输入一个数字:") # 输入
print(num) # 输出
print(type(num)) # 数据类型
print(id(num)) # 内存地址,
# 学习几个基本的函数方法,input输入,print输出,type类型,id内存地址, """
分析这段代码:
常量变量,
1,num就是一个变量,
2,13就是一个常量,13=13 # 13是常量不能被赋值,
3,区分,变量是可以被赋值的,常量是不能被赋值的,
4,等号就是赋值的意思,
标识符关键字,
num就是一个标识符,这个用于区分其他变量,标识符的硬性要求:
1,标识符只能是字母数字下滑线组成,
2,不能是数字开头,3num=13,这种就不行,
3,标识符不能是关键字,
import keyword
print(keyword.kwlist) #可以查看有哪些关键字,
4,标识符区分大小写,Num=14 标识符的通用要求
1,就是见名知意,命名有一个有意义的名字,,
2,通用的命名方式有很多种:
类(class)的命名采用大驼峰命名法,首字母大写,如CamelCase;
函数的命名采用下划线分隔的小写字母,如separateed_by_underscores;
变量一般用小驼峰法标识。除第一个单词之外,其他单词首字母大写。myStudentCount;
"""
############### python变量类型 ###############
# 一共是7种数据类型
# 1,Numbers(数字)
num = 10 # int整数
money=123.5 # 浮点数
data=1+2j # 复数:用来描述平面上的一个坐标,x是1,y是2
# long1=0122L
# long 类型只存在于 Python2.X 版本中,在 2.2 以后的版本中,int 类型数据溢出后会自动转为long类型。在 Python3.X 版本中 long 类型被移除,使用 int 替代。
#############################
# 2,Boolean(布尔值)
isnum=True
# 3,String(字符串)
name='andy'
# 4,List(列表)
list1=[1,2,3]
# 5,set集合
set1= {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
# 6,Tuple(元组)
tuple1=(1,2)
# 7,Dictionary(字典)
dict1={"name":"andy","age":18}
################################################
列举布尔值为False的常见值?
1,布尔型,False表示False,其他为True
2,整数和浮点数,0表示False,其他为True
3,字符串和类字符串类型(包括bytes和unicode),空字符串表示False,其他为True
4,序列类型(包括tuple,list,dict,set等),空表示False,非空表示True
5,None永远表示False
############### 字符串的基本操作 ###############
name ='andy'
print("my name is "+ name) # 字符串连接
print(name*2) # 重复输出字符串
print(name[1]) # 通过索引获取字符串中字符
print(name[0:2]) # 截取字符串中的一部分,遵循左闭右开原则
print('a' in name) # 成员运算符 - 如果字符串中包含给定的字符返回 True
print('a' not in name) # 成员运算符 - 如果字符串中不包含给定的字符返回 True
print('my name is %s,age is %d'%(name,18)) # 字符串格式化,%s是字符串,%d是整数
############### 字符串的常用内置函数 ###############
str1 = 'andy'
print(str1.capitalize()) # 将字符串的第一个字符转换为大写
print(str1.center(10,'*')) # 这是把字符串在10个width中显示,空的显示后面的字符
print(str1.count('a',0,len(str1))) # 方法用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。
print(str1.find('a',0,len(str1))) # 检测字符串中是否包含子字符串 str ,如果指定范围,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。
print(str1.index('a',0,len(str1))) # 跟find()方法一样,只不过如果str不在字符串中会报一个异常.所以一般还是用find
print(str1.isalnum()) # 如果字符串至少有一个字符并且所有字符都是字母或数字则返 回 True,否则返回 False
print(str1.isalpha()) # 如果字符串至少有一个字符并且所有字符都是字母则返回 True, 否则返回 False
print(str1.isdigit()) # 如果字符串只包含数字则返回 True 否则返回 False..
print(len(str1)) # 返回字符串长度
print(max(str1)) # 最大,
print(min(str1)) # 最小
print(str1.title()) # 返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写(见 istitle())
print(str1.upper()) # 转换字符串中的小写字母为大写
print(str1.replace("a","A",1)) # 字符串中的 old(旧字符串) 替换成 new(新字符串)后生成的新字符串,如果指定第三个参数max,则替换不超过 max 次。
print(str1.split('n',2)) # split() 通过指定分隔符对字符串进行切片,如果第二个参数 num 有指定值,则分割为 num+1 个子字符串。num -- 分割次数。默认为 -1, 即分隔所有。
seq=('a','d','d','y')
print('-'.join(seq))
例题:
# s = "ajldjlajfdljfddd",去重并从小到大排序输出"adfjl" s = "ajldjlajfdljfddd"
s = set(s)
print(s) # {'l', 'f', 'd', 'j', 'a'}
s = list(s)
print(s) # ['l', 'f', 'd', 'j', 'a']
# s= s.sort(reverse=False) # sort没有返回值,所以这样写不对,
s.sort(reverse=False)
print(s) # ['a', 'd', 'f', 'j', 'l']
s = "".join(s)
print(s) # adfjl
例题
# x="abc",y="def",z=["d","e","f"],分别求出x.join(y)和x.join(z)返回的结果 x="abc"
y="def"
z=["d","e","f"]
print(x.join(y)) # dabc eabc f
print(x.join(z)) # dabc eabc f # join()括号里面的是可迭代对象,x插入可迭代对象中间,形成字符串,结果一致,有没有突然感觉字符串的常见操作都不会玩了
例题:
# a="hello"和b="你好"编码成bytes类型
a="hello"
b="你好"
a = b"hello"
b="你好".encode()
print(a,b)
############### 列表的操作 ###############
list1=['my','name','is','andy']
# 访问列表:切片
print(list1[2])
print(list1[1:3])
print(list1[:-1])
# 更新列表
list1[0]='his'
print(list1)
list1.append('Lee') # 这是在列表末尾插入元素
print(list1)
list1.insert(1,[1,2,3]) # 这是在指定位置插入元素
print(list1)
# 删除列表元素
del list1[4]
print(list1)
list1.remove(list1[3])
print(list1)
list1.pop() # 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
print(list1)
# +和*,适用于字符串,同样适用于列表
print(list1+list1) # ['his', 'name', 'is', 'his', 'name', 'is']
print(list1*3) # ['his', 'name', 'is', 'his', 'name', 'is', 'his', 'name', 'is']
############### 列表的其他常用函数和方法 ###############
list1=['my','name','is','andy']
print(len(list1))
print(max(list1))
print(min(list1))
print(list1.count('my')) # 统计某个元素在列表中出现的次数
print(list1.index('my')) # 从列表中找出某个值第一个匹配项的索引位置
print(list1.reverse()) # 反向列表中元素
list2=[4,5,1,2,3]
list2.sort(reverse=True) # reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
print(list2)
list2.clear()
print(list2)
list3=list1.copy()
print(list3)
python的append和extend有什么区别?
python的append和extend有什么区别?
答:extend()接受一个列表参数,把参数列表的元素添加到列表的尾部,append()接受一个对象参数,把对象添加到列表的尾部。
############################################
如何实现 “1,2,3” 变成 [‘1’,’2’,’3’] ?
list("1,2,3".split(',')) 如何实现[‘1’,’2’,’3’]变成[1,2,3] ?
[int(x) for x in ['','','']] 如何用一行代码生成[1,4,9,16,25,36,49,64,81,100] ?
i*i for i in range(1,11)] 一行代码实现删除列表中重复的值 ?
list(set([1, 2, 3, 4, 45, 1, 2, 343, 2, 2]))
############### 元组的操作 ###############
# 元组
# 创建空元组
tuple1=()
# 元组只包含一个元素时,需要在后面加逗号
tuple2=(1,)
print(type(tuple2))
# 访问元组
tuple3=(1,2,3)
print(tuple3[2]) # 所以一样可以使用切片的方式
# 修改元组
# 注意:元组里面的元素值是不能被修改的,但是可以进行连接,使用+
tuple4=tuple3+tuple2
print(tuple4)
# 也可以使用*号进行运算
print(tuple3*3)
# 也可以使用in来判断一个元素是否在这个元组内,返回True,和False,
print(3 in tuple3)
# 删除元组
# 元组里面的元素是不允许删除的,但是可以删除整个元组,
del tuple4
print(tuple4)
# 元组的内置函数
# 同样的元组内置函数也有len(),max(),min(),
############### 字典的操作 ###############
# 字典
dict1={"name":'andy',"age":18}
# 注意:字典的key必须是唯一的,值可以不是唯一的,
# 访问字典里的值
print(dict1['name'])
# 修改字典的值
dict1['age']=20
print(dict1)
# 往字典里面新增新的值
dict1['sex']='boy'
print(dict1)
# 所以也就是说如果有值就是修改,没有值就是新增,
# 删除字典的值
del dict1['sex'] # 删除某一个元素
dict1.clear() # 清空字典的值
del dict1 # 删除整个字典,
# 字典的特性
# 字典的键必须不可变,所以可以是数字,字符串,元组,但是列表就不行,
############### 字典的内置函数 ###############
dict1={"name":'andy',"age":18}
# copy()
dict2=dict1.copy() # 返回一个字典的浅复制
print(dict2)
# fromkeys()
seq=['name','age']
dict3=dict.fromkeys(seq,10) # 创建一个字典,以序列中的元素作为键,第二个参数是默认的值,不写默认是none print(dict3) # {'name': 10, 'age': 10}
# get()
print(dict1.get('name','NAN')) # get() 函数返回指定键的值,如果值不在字典中返回默认值。
# print(dict1['name2']) # 这种切片的方式会如果没有这个键会报错,所以一般是使用get的方式取值,不报错,
# dict1.keys()
dict1_key=dict1.keys()
print(dict1_key) # dict_keys(['name', 'age'])
print(type(dict1_key)) # <class 'dict_keys'>
print(list(dict1_key)) # 可以转换为列表,
# dict1.items()
dict1_items=dict1.items()
print(dict1_items) # 返回的是列表形式,里面的元素都是键值对构成的元组
# dict1.values()
dict1_values=dict1.values()
print(dict1_values) # 返回一个迭代器,可以使用 list() 来转换为列表
# dict1.pop()
dict1_pop=dict1.pop('name2','默认值') # 删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值
print(dict1_pop)
字典如何删除键和合并两个字典
dic = {"name":"andy","age":123}
del dic["name"] # 删除键
# dic = {"age":123} dic2 = {"name":"test"}
dic.update(dic2) # 合并两个字典
# dic = {"name":"test","age":123}
################################################
字符串、列表、元组、字典每个常用的5个方法?
1,字符串 split/strip/replace/find/index ...
2,列表 append/extend/insert/push/pop/reverse/sort ...
3,元组 len/max/min/count/index ...
4,字典 keys/values/pop/clear/del ...
5,集合 add/remove/clear/交集&、并集 |、差集 -
python语法基础-基础-变量和数据类型的更多相关文章
- Java编程基础——常量变量和数据类型
Java编程基础——常量变量和数据类型 摘要:本文介绍了Java编程语言的常量变量和数据类型. 常量变量 常量的定义 一块内存中的数据存储空间,里面的数据不可以更改. 变量的定义 一块内存中的数据存储 ...
- Python入门基础之变量和数据类型
在Python中,能够直接处理的数据类型有以下几种: 一.整数 Python可以处理任意大小的整数,当然包括负整数,在Python程序中,整数的表示方法和数学上的写法一模一样,例如:1,100,-80 ...
- Python编程-编码、变量、数据类型
一.Python和其他语言对比 C语言最接近机器语言,因此运行效率是最高的,但需要编译. JAVA更适合企业应用. PHP适合WEB页面应用. PYTHON语言更加简洁,丰富的类库,使初学者更易实现应 ...
- Swift基础语法(常量变量、数据类型、元组、可选、断言)
本文来自Swift中文开发组,感谢翻译者的分享. 本文将分几部分对Swift对ios的语法做讲解.本文为第一节,主要讲解基础语法. 常量和变量 常量和变量把一个名字(比如maximumNumberOf ...
- python基础之变量与数据类型
变量在python中变量可以理解为在计算机内存中命名的一个存储空间,可以存储任意类型的数据.变量命名变量名可以使用英文.数字和_命名,且不能用数字开头使用赋值运算符等号“=”用来给变量赋值.变量赋值等 ...
- python语法_1基础语法概述
http://www.runoob.com/python3 章节:教程.基础语法.数据类型.解释器.注释.运算符. 大纲 查看python版本 实现第一个python3.x程序,hello world ...
- Python语法教程-基础语法01
目录 1. Python应用 2. 在Linux中写python 3. Python基础语法 1. 注释 2. 变量定义及类型 3. 格式化输出 4. 用户输入 5. 运算符 6.数据转换 7. 判断 ...
- 开发基础 (变量、数据类型、格式化输出、运算符、流程控制、while循环)
一.变量 name = "SmallNine" 等号前面是变量名(标识符),等号后面是变量值 变量的主要作用:就是把程序运算的中间结果临时存到内存里,已备后面的代码继续调用. 变量 ...
- iOS开发笔记系列-基础4(变量与数据类型)
对象的初始化 对象的初始化方法一般都如下: -(id)init { self=[super init]; if(self){ ... } return self; } 这个方法首先会调用父类的初始化方 ...
- java基础知识—变量、数据类型和运算符
1.变量:存储数据的一个基本单元.2.变量的声明和赋值: 1)声明并赋值;数据类型 变量名=值 例如:int prince=10; 2) 声明.赋值分为两步: 数据类型 变量名: 例如:int=pri ...
随机推荐
- windows 10 远程连接出现CredSSP加密Oracle修正错误
以下方法只受用于windows专业版或者企业版 . 解决方法: 运行 gpedit.msc 本地组策略: 计算机配置>管理模板>系统>凭据分配>加密Oracle修正 选择启用并 ...
- UML-活动图及其建模
1.目标:UML活动图标示法. 2.定义:一个UML活动图标示一个过程中的多个顺序活动和并行活动.这些活动有助于对业务过程.工作流.数据流和复杂算法进行建模. 3.作用:既能表示控制流又能标示数据流. ...
- postman问题
问题1:postman请求出现 'SSL certificate verification' ,实际为https的问题 解决: 1)关闭fiddler 2)或在File > Settings & ...
- 详细的git入门级别,从安装到实战
拥有自己码云开源网站,想要上传项目到码云怎么操作?公司新技术提升由Svn转为Git,慌不慌?想要从Github开源网站下载开源项目,难道还依赖直接下载项目然后解压导入项目工程?下面可以通过及其简易且好 ...
- 吴裕雄--天生自然ShellX学习笔记:Shell 数组
数组中可以存放多个值.Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似). 与大部分编程语言类似,数组元素的下标由0开始. Shell 数组用括号来 ...
- PAT Vocabulary
数字 单词 词性 中文意 常用 音标 non-negative 非负数 non-negative number Positive 正整数 Positive integer Negative 负数 Ne ...
- Linux中的错误重定向你真的懂吗
在很多定时任务里.shell里我们往往能看到 "2>&1",却不知道这背后的原理. 举个例子: * 1 * * * test.sh > /dev/null 2& ...
- SpringBoot2.0整合Quartz实现动态设置定时任务时间
一. 引入依赖 <!-- 引入quartz依赖 --> <dependency> <groupId>org.springframework.boot</ ...
- 面向对象 part7 class
类的定义 类实际上是个“特殊的函数“,就像能够定义函数表达式和函数声明一样,类语法 有两个组成部分:类表达式和类声明式 类声明 类声明没有提升 静态方法 只有构造函数名可以调用,实例无法使用.常用于应 ...
- BZOJ4422[Cerc2015]Cow Confinement(扫描线+线段树)
很容易发现一个O(n2)DP,f[i][j]=f[i][j+1]+f[i+1][j]-f[i+1][j+1].然后由于有栅栏,一些位置没办法走,然后就可以用类似差分的方法,f[i]表示当前行f[i+1 ...