Python基础:注释、变量、数据类型、字符串常见的操作、Python的数据容器、遍历数据容器、其它函数

python -V可查看python有没有安装成功,结果是安装的python结果。

Pycharm 快捷键 Ctrl + D 表示复制当前行至下一行

一、注释

# 在一行之前表示单行注释
' ' '
    多行注释
' ' '
" " "
    多行注释
" " "

二、变量

1、变量命名要求:字母,数字,下划线

      注意:(1)数字不能作为开头
                 (2)不能以关键字作为开头
  
import keyword
print(keyword.kwlist)  可以输出所有的关键字

2、变量定义

(1)定义即赋值,定义的时候不需要去指定数据的类型,python执行器可以自动判断。
i = 1
print(i,type(i)) #可以输出定义的变量默认的数据类型
结果:1 <class 'int'>

  print():输出中数据是逗号隔开,输出时默认是空格,要想输出逗号可以用双引号或者单引号,因为python中没有字符的概念,默认都是字符串,数据后默认有end='\n', 表示自动换行。

print("hello",end="") #指定end后,不执行默认换行了。
print("world")
结果为:helloworld

三、数据类型

整型:int         字符串:str            小数:float     
布尔类型:bool(True,False 首字母大写)   空类型:NoneType(值只有None)

1、数据类型之间的相互转换
i = "1"  #字符转整数类型
print(int(i), type(int(i)))

d = "2.1"  #字符窜转小数类型,字符串是小数数值不能转换为整数类型
print(float(d), type(float(d)))

c = 3.6   #小数类型转整数类型,会损失精度,不会四舍五入。
print(int(c), type(c))

i = 0  #小于等于0的数(小数也行),转换成bool类型时默认是False ,大于0默认是True
print(bool(i), type(bool(i)))
结果
1 <class 'int'>
2.1 <class 'float'>
3 <class 'float'>
False <class 'bool'>

四、字符串的常见操作

str = "lsfl slfj sldf kdk kd"
print(str.split(" "))  # split 分割方法

print("*" * 50)  # 表示字符串的数量乘以50
"""
   strip 表示去除字符串两边的隐藏字符
   \t 表示一个制表符
   \n 表示换行
   \r 表示回车
"""
str2 = "\n \t java python sql \t \n \r"
print(str2)
print(str2.strip())
结果
['lsfl', 'slfj', 'sldf', 'kdk', 'kd']
**************************************************

 	 java python sql 	 
 
java python sql
'''
  字符串截取
  [开始位置:结束位置:步长]  索引从0开始,取值区间左闭右开,不包括结束位置
  步长表示截取到的数值,先取第一个字符,每隔步长个数取一个字符,如果步长是1,则结果就是截取的值
'''
str = "java python hadoop mysql"
print(str[5:11])
print(str[5:11:1])
print(str[5:11:2])
print(str[::-1])  # 反转,前面默认全取,-1表是从右到左隔着取,因为是1,所以相当于反转了字符窜


python
python
pto
lqsym poodah nohtyp avaj

print(len(str)) 输出字符窜的长度

# 特定格式输出一个字符窜
#方式一
str_format = "{} * {} = {}"
print(str_format.format(a, b, a * b))

# 方式二
# %d 表示 数字
# %s 表示 字符串
# %f 表示 浮点型
# %.nf 表示 输出小数点后n位
print("%d * %d = %d" % (a, b, a * b))
print("%s * %d = %d" % ('4', b, a * b))
print('%f' % 3.14)
print('%.1f' % 3.14)

# 算术运算符
# + - * / % // **
# // 表示整除 ** 表示次方
a = 10
b = 3
print(a + b)  # 13
print(a - b)  # 7
print(a * b)  # 30
print(a / b)  # 3.33333...
print(a % b)  # 1
print(a // b)  # 3
print(a ** b)  # 1000

# 如果是两个 ** 号 则需要从后往前计算
print(2 ** 3 ** 2)  # 512
# 如果是两个 // 号 则需要从前往后计算
print(10 // 3 // 2)  # 1

五、Python的数据容器(列表list,元组tuple,集合set,字典dict)

1、list 列表

   用 [ ] 定义一个list  ,通过索引取值
特点:
    1.可以存储不同类型的数据
    2.可以存储相同数值数据
    4.列表中的元素是可以被删除的 
    5.列表中可以嵌套列表

(1)定义

list = [3, 1, 5, 6, 3, 63, 5]
print(list)

[3, 1, 5, 6, 3, 63, 5]

(2)list 的截取方法和str相同

print(list[开始位置 : 结束位置 : 步长 ]) 

print(list[::-1]) 取反

(3)对list进行增删改查

# 修改元素
list1[2] = "A"   修改位置为2的元素
print(list1)

# 删除元素
# pop方法:删除列表中最后一个元素
list1.pop()
print(list1)

# remove:删除列表中指定的值,如果出现重复,那么就删除第一个出现的值
list1.remove(1)
print(list1)

# 增加元素
# append:在列表的末尾进行追加元素
list1.append([1, 2]) #列表中可以嵌套列表
print(list1)

# insert:在列表的指定索引位置插入元素
list1.insert(4, False)
print(list1)

(4)其他函数

# 排序  默认从小到大
list2 = [3, 4, 1, 2]
list2.sort()
print(list2[::-1])

# 合并
# extend函数:讲另外一个列表追加到当前列表之后
list3 = [6, 7, 8, 9]
list1.extend(list3)   #list3中的元素加到list1中
print(list1)

# +: 将两个list 合并成一个新的 list
list4 = list2 + list3
print(list4)

# 反转
list4.reverse()
print(list4)

# 统计指定元素的数量
list5 = [1, 1, 2, 3, 1]
print(list5.count(1))

#输出列表的长度
print(len(list1))

# 清除所有的list元素
list5.clear()
print(list5)

2、元组(tuple)

定义用()

特点:
    1.可以存储重复数据
    2.可以存储不同类型的数据
    4.元组是不支持修改的

1、定义

tuple1 = (1, 1, 2, 3, 1.1, True, "str")
print(tuple1)

2、基本命令



print(tuple1(1)) #可以通过索引取值

# count:统计指定元素数量
print(tuple1.count(1))

print(len(tuple)) # 元祖长度

3、集合(set)

定义使用 { }

特点:
    1.set集合可以存储不同类型数据
    2.set集合是不可以通过索引取值
    3.set集合存储不了重复数据
set1 = {1, 1, 2, "hello", False, 1.1}
print(set1)

# 取元素
# set集合不能通过下标进行取数据
#索引指能全取,通过for循环取值
for i in set1:
    print(i)

# 删除数据
set1.pop()  
print(set1)  #{1, 2, 1.1, 'hello'} 默认删除set集合第一个

#删除指定元素,
set1.remove("hello")
print(set1) #

# 增加元素
set1.add(1)
set1.add(2)
set1.add(3)
print(set1)  #因为是不可以重复,所以相同元素不能加入

# 集合运算
set2 = {2, 3, 4}
set3 = {3, 4, 5}
print(set2 & set3)  # {3,4}  取交集
print(set2 | set3)  # {2,3,4,5} 去掉相同元素
print(set2 - set3)  # -号是指去除set2中set2与set3重复的元素

4、字典(dict)

定义:{K:V , k2:v2 , k3:v3 ...}

特点:
    1.不可以存储相同Key的数据,默认存储后一个相同K,v值,v的值可以相同
    2.需要通过Key进行取值,无法通过索引取值和改变某值
    3.当Key中同时出现0和TRUE以及1和False后会出现相同key替换现象(特点1),默认key中1和true相同,0和false相同,但输出还是自己本身。
    4.字典中的Key为不可变元素,Value中可以存储任意类型元素,values可以为字典,嵌套获取。
    5.字典中的Value值可以直接根据数据类型取出,必须所有的value是不同数据类型
    6.查询速度并不会随着元素的增多变慢
1、定义
dict1 = {
    'x1': "x1",
    'x1': "x2",
    1: "1",
    0: "0"}
print(dict1) #{'x1': 'x2', 1: '1', 0: '0'}

2、基本操作

# 通过Key进行取值
# 方式一:
print(dict1['x1'])
# 方式二:
dict1.get("x1")

# 改变Key对应的Value值
dict1['x1'] = 'x3'
print(dict1)


print(dict1.keys())  #获取所有key值
print(dict1.values()) #获取所有的value值
print(dict1.items()) #获取所有的k-v值

3、嵌套获取

dict1 = {
    'x1': "x1",
    1: {1: 2,
        "t": 3
        }
} 
print(dict1.get(1).get(1))  # 2
print(dict1.get(1).get("t")) # 3

六、遍历所有的数据容器

# 遍历列表
ls1 = [3, 4, 5]
for i in ls1:
    print(i)

# 遍历元组
tup1 = (3, 4, 5)
for t in tup1:
    print(t)

# 集合Set
set4 = {4, 4, "hello", True}
for s in set4:
    print(s)   #输出结果中不会有重复元素

# 字典dict
dict2 = {
    'xx1': "xx1",
    'xx2': "xx2",
    'xx3': "xx3",
}

for key in dict2.keys():  #输出所有的key
    print(key)

for values in dict2.values(): # 输出所有的valus
    print(values)

for kv in dict2.items(): #item返回的是元组,可以使用索引
     print(kv)
     print(kv[0], kv[1])  

for k, v in dict2.items(): #输出所有
    print(k, v)

xx1
xx2
xx3

xx1
xx2
xx3

('xx1', 'xx1')
xx1 xx1
('xx2', 'xx2')
xx2 xx2
('xx3', 'xx3')

xx3 xx3
xx1 xx1
xx2 xx2
xx3 xx3

七、其他函数

1、range函数:

# range 函数
# range 传值是一个区间,区间是左闭右开区间,起始位置如果是0 可以不写
for i in range(10):
    print(i, end="")

结果为 0123456789

应用:

# 需求:获取一个从1...100的列表
# 方式一:
list6 = []
for i in range(1, 101):
    list6.append(i)
print(list6)

# 方式2:
# 列表推导式
list7 = [i for i in range(1, 101)]  #第二个i是循环中的,用来赋值给第一个i,然后存在列表中
print(list7)

# 需求:获取一个从1...100的奇数列表
# 方式一:
list7 = [i for i in range(1, 101, 2)]
print(list7)

# 方式2:
# 列表推导式
list7 = [i for i in range(1, 101) if i % 2 == 1]
print(list7)

2、join函数

# join 和 split
str2 = "java,python,scala"
print(str2.split(','))
list8 = str2.split(',')
print(','.join(list8))

结果
['java', 'python', 'scala']
java,python,scala

3、九九乘法表

print("\n".join(['\t'.join(['{} * {} = {}'.format(j, i, j * i) for j in range(1, i + 1)]) for i in range(1, 10)]))

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值