大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
1.
msg = '我叫%s,我看着像%r' % ('太白','郭德纲') print(msg)
我叫太白,我看着像'郭德纲'
句中出现引号,把%s替换成%r,可以打印出原来样式
2.
ASCII 8位字节 英文字母,数字,特殊字符
unicode:万国码
python2: unicode默认是2个字节表示一个字符
python3: unicode统一是4个字节表示一个字符
创建初期 16位字节 四个字节代表一个字符
a: 0000 0001 0001 0010
国:0000 0001 0001 0010
后期:32位字节 四个字节表示一个字符
a:0000 0001 0001 0010 0000 0001 0001 0010
国:0000 0001 0001 0010 0000 0001 0001 0010
浪费内存
utf-8 最少用八位字节表示一个字符
a:0000 0001 8位
欧洲:0000 0001 0001 0010 16位
中:0000 0001 0001 0010 0000 0001 24位
gbk:国标
a:0000 0001 8位
中:0000 0001 0001 0010 16位
3.
if 3 >2: print(555) if 2 >1: print(333) elif 4 > 2: print(222) else: print(666)
return 555,333
4.基础数据类型
4.1数字int:用于计算
#bit_length() 当十进制用二进制表示时,最少使用的位数
v=11
data = v.bit_length()
print(data)
二进制:逢二进一 十进制:逢十进一
1. 0000 0001
2. 0000 0010
3. 0000 0011
4. 0000 0100
4.2布尔值bool:反应条件的正确与否 true and false
s1='' if s1: print(666) else: print(111)
return: 111
空字符串为false
s = str(True) print(s,type(s))
Return: True <class ‘str’>
4.3字符串str:存储量少,操作简单,便于传输
4.3.1 字符串的索引与切片。
索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推。
a = 'ABCDEFGHIJK' print(a[0]) print(a[3]) print(a[5]) print(a[7])
A D F H
切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚)。
a = 'ABCDEFGHIJK' print(a[0:3]) print(a[2:5]) print(a[0:]) #默认到最后 print(a[0:-1]) #-1就是最后一个 print(a[0:5:2]) #加步长 print(a[5:0:-2]) #反向加步长 也可以print(a[-1:-5:-1])倒着切片
步长:跳着切s[起始索引:截止索引:步长] 默认为不加如果步长为1
元祖tuple:只读列表,只能查看,不能更改,能放各种类型数据
元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)(”a”,”b”,”c”)
列表list:
中括号,什么数据类型都能放{1,2,‘Alex(’name‘:老男孩}列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。
5.常用操作方法
count(数)(方法统计某个元素在列表中出现的次数)
s = 'ddjsjdjfjsjdjfjffjsasdf' print(s.count('d'))
index(方法用于从列表中找出某个值第一个匹配项的索引位置)
s = 'ddjsjdjfjsjdjfjffjsasdf' print(s.index('d'))
6.字典
字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可hash的。可hash表示key必须是不可变类型,如:数字、字符串、元组。
字典(dictionary)是除列表意外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
for循环:用户按照顺序循环可迭代对象的内容
msg = '老男孩python是全国范围内最好的python培训机构' for item in msg: print(item)
li = ['alex','银角','女神','egon','太白']
for i in li:
print(i)
dic = { 'name':'太白','age':18,'sex':'man'} for k,v in dic.items(): print(k,v)
enumerate:枚举,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。
li = ['alex','银角','女神','egon','太白'] for i in enumerate(li): print(i) for index,name in enumerate(li,1): print(index,name) for index, name in enumerate(li, 100): # 起始位置默认是0,可更改 print(index, name)
range:指定范围,生成指定数字。
for i in range(1,10): print(i) for i in range(1,10,2): # 步长 print(i) for i in range(10,1,-2): # 反向步长 print(i)
# 首字母大写,其他字母小写
s = 'laonanhai' print(s.capitalize())
# 全部大写,全部小写
s = 'laonanhai' print(s.upper())
s = 'laonanhai' print(s.lower())
code = 'qcQn' y_code=input('请输入验证码') if y_code.upper() == code.upper(): print('验证码输入成功')
# 居中center
s='电风扇等方式发呆' print(s.center(30,'*'))
# 大小写反转
s='skGGGGDDDD' print(s.swapcase())
# 每个单词的首字母大写(非字母歌开)
s='alex wusir*laonanhai2taibai' print(s.title())
# 判断以什么为开头,以什么为结尾
s = 'alex wusir*laonanhai2taibai' print(s.startswith('ale'))
s = 'alex wusir*laonanhai2taibai' print(s.endswith('ale'))
# 去除首位的空格,换行符,tab.#strip
s = ' alex wusir*laonanhai2taibai ' print(s.strip())
name = input('请输入用户名').strip() if name == 'alex': print(666)
# 只想去除单方向空格
s = ' wefwefwef ' print(s.lstrip())
s = ' wefwefwef ' print(s.rstrip())
s = 'wefwefwef' print(s.strip('w'))
s = 'wefwefwef' print(s.strip('we'))
元素不分顺序,截住就不进行,有哪个就劫去哪个
# find and index索引
s = 'alexex' print(s.find('e')) print(s.find('e',3))通过元素找索引 print(s.find('A')) 没找到return -1,比index常用 print(s.index('A'))如果找不到会报错
# count寻找个数 寻找元素出现的次数
s = 'alexex' print(s.count('e')) print(s.count('ex'))可以切片
# replace替换
s ='啊煞笔大是大非上对方是电风扇' print(s.replace('大','小'))
s ='啊煞笔大是大非上对方是电风扇' print(s.replace('大','小',1))
# split分割str-list,rstrip从右往左
s = 'alex wusir taibai' print(s.split('a'))
s = 'alex wusir taibai' print(s.split('a',1))分割次数
s = 'alex wusir taibai' print(s.split())
## format
三种用法
1.
s = 'I AM {}, I AM {}, MY HOBBY IS {}'.format('MT',18,'EATING') print(s)
2.
s = 'I AM {0}, I AM {1}, MY HOBBY IS {2},i am still {1}'.format('MT', 18, 'EATING') print(s)
换行用\
3.
s = 'I AM {name}, I AM {age}, MY HOBBY IS {hobby},i am still {age}'.format(name='MT', age='18', hobby ='EATING') print(s)
无需按顺序一一对应
name = '123' print(name.isalnum()) #字符串由字母或者数字组成 print(name.isalpha()) #由字母组成 print(name.isdigit()) #由数字组成 if name.isdigit(): name = int(name) print(name,type(name)) else: print('您输入的有非数字')
## length
s = 'sdfsdfsd' print(len(s)) count = 0 while count < len(s): print(s[count]) count += 1
## For 循环, 有限循环
for i in s
print(i)
转载于:https://www.cnblogs.com/kateli/p/8610411.html
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/189460.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...