在线等 python--编写下列程序。 用户输入一段字符串,输出该字符串的长度小写大写形式

--编写下列程序。

用户输入一段字符串,输出该字符串的长度小写大写形式将该字符串转化为八进制十六进制,并分别输出统计特定字符在该字符串中出现的次数,特定字符由用户输入。

到底怎么样才能把整个字符串转化为数字,注意是整个,求具体过程,谢谢

这个答案保准你满意。

string = input("请输入字符串:")
print("字符串长度:{}".format(len(string)))
print("小写形式:{}".format(string.lower()))
print("大写形式:{}".format(string.upper()))

# 0的ASCII码是 0000 0000,每个字符在utf-8编码下占8个位
long_bit = 0
for bit in str.encode('utf-8'):
    # 当前long_bit左移8位
    long_bit = long_bit << 8
    # 按位或当前bit
    long_bit = long_bit | bit
    # 上面两个操作相当于在当前long_bit后接上当前bit

print("二进制形式:{:b}".format(long_bit))
print("八进制形式:{:o}".format(long_bit))
print("十六进制形式:{:x}".format(long_bit))

# 检查特定字符出现的次数
x = input("请输入特定字符,检查它出现的在之前输入字符串中的次数:")
n = 0
for s in string:
    if x == s:
        n += 1
print("{}在{}中出现了{}次。".format(x, string, n))

追问

谢谢ヽ(^0^)ノ你

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-04-04
Python提供了 input() 内置函数从标准输入读入一行文本,默认的标准输入是键盘。
str = input("请输入:");
print ("你输入的内容是: ", str)

print(str.upper()) # 把所有字符中的小写字母转换成大写字母
print(str.lower()) # 把所有字符中的大写字母转换成小写字母
len(str)
用这几个就能完成字符串str大小写长度的输出追问

求具体过程,非常感谢

这是原图

第2个回答  2019-04-04
a program that accepts sequence of lines as input and prints the lines after making all characters in the sentence capitalized.
||一种程序,它能接受行序列作为输入,并在把句子中的所有字符输出为大小写转换
第3个回答  2019-04-04
字符串有大写小写这一说,那说明里面会有字母,又让转换成八进制十六进制,这个从带有字母的字符串转换到数字的规则是怎么样的?追问

就是将整个字符串转化为数字,再转进制
我也不太懂我才新学,这是老师给的作业

追答

老师原题描述有吗

追问

我问题里发的就是原题

--编写下列程序。

用户输入一段字符串,输出该字符串的长度小写大写形式,将该字符串转化为八进制十六进制,并分别输出统计特定字符在该字符串中出现的次数,特定字符由用户输入。

追答import binascii

# python>=3.7
str_in = input('请输入一个字符串:')
print(f'长度:{len(str_in)}\n'
      f'大写:{str_in.upper()}\n'
      f'小写:{str_in.lower()}\n'
      f'八进制:{oct(int(binascii.b2a_hex(str_in.encode()), 16))}\n'
      f'十六进制:{binascii.b2a_hex(str_in.encode()).decode()}')

chars = list(input('请输入需要统计的特定字符:'))
for c in chars:
    print(f'{c} 的数量:{str_in.count(c)}')


# python<3.7
str_in = input('请输入一个字符串:')
print('长度:{}\n大写:{}\n小写:{}\n八进制:{}\n十六进制:{}'
      .format(len(str_in), str_in.upper(), str_in.lower(),
              oct(int(binascii.b2a_hex(str_in.encode()), 16)),
              binascii.b2a_hex(str_in.encode()).decode()))

chars = list(input('请输入需要统计的特定字符:'))
for c in chars:
    print('{} 的数量:{}'.format(c, str_in.count(c)))

给你写了两个python版本的。

八进制十六进制不能保证正确,我其实觉得老师的题目描述有问题。

追问

谢谢你了

第4个回答  2019-04-04
a program that accepts sequence of lines as input and prints the lines after making all characters in the sentence capitalized.
相似回答