Python dict ke string tanpa tanda kutip

Setelah Anda menguasai Python, Anda akan menemukan diri Anda membuat banyak kamus. Saat kunci adalah pengidentifikasi, Anda dapat menghindari mengutipnya dengan memanggil dict dengan sintaks argumen bernama

data = dict(red=1, green=2, blue=3)

Ini lebih rapi daripada penggunaan sintaks tampilan kamus yang setara

data = {'red': 1, 'green': 2, 'blue': 3}
_

Diskusi

Salah satu cara ampuh untuk membuat kamus adalah dengan memanggil dict tipe bawaan. Ini sering merupakan alternatif yang baik untuk sintaks tampilan kamus dengan tanda kurung dan titik dua. Resep ini menunjukkan bahwa, dengan memanggil dict, Anda dapat menghindari keharusan mengutip kunci, ketika kunci tersebut adalah string literal yang secara sintaksis valid untuk digunakan sebagai pengidentifikasi Python. Anda tidak dapat menggunakan pendekatan ini untuk kunci seperti string literal '12ba' atau 'for', karena '12ba' dimulai dengan angka, dan kebetulan merupakan kata kunci Python, bukan pengenal

Juga, sintaks tampilan kamus adalah satu-satunya kasus di Python di mana Anda perlu menggunakan kawat gigi. jika Anda tidak menyukai kawat gigi, atau kebetulan menggunakan keyboard yang membuat kawat gigi sulit dijangkau (seperti yang dilakukan semua keyboard tata letak Italia. ), Anda mungkin lebih senang, misalnya, menggunakan dict() daripada {} untuk membuat kamus kosong

Memanggil dict juga memberi Anda kemungkinan lain. dict(d) mengembalikan kamus baru yang merupakan salinan independen dari kamus d yang ada, seperti halnya d. copy( )tetapi dict(d) berfungsi bahkan ketika d adalah urutan pasangan (kunci, nilai) alih-alih menjadi kamus (ketika kunci muncul lebih dari sekali dalam urutan, tampilan terakhir kunci berlaku). Sebuah idiom pembangun kamus yang umum adalah

d = dict(zip(the_keys, the_values))

di mana the_keys adalah urutan kunci dan the_values ​​adalah urutan "paralel" dari nilai yang sesuai. Zip fungsi bawaan membangun dan mengembalikan daftar pasangan (kunci, nilai), dan dict tipe bawaan menerima daftar itu sebagai argumennya dan membuat kamus yang sesuai. Jika urutannya panjang, lebih cepat menggunakan modul itertools dari pustaka Python standar

import itertools d = dict(itertools.izip(the_keys, the_values))

Zip fungsi bawaan membangun seluruh daftar pasangan dalam memori, sementara itertools. izip hanya menghasilkan satu pasangan dalam satu waktu. Di mesin saya, dengan urutan 10.000 angka, idiom terakhir kira-kira dua kali lebih cepat dari yang menggunakan zip18 versus 45 milidetik dengan Python 2. 3, 17 versus 32 dengan Python 2. 4

Anda dapat menggunakan argumen posisi dan argumen bernama dalam panggilan yang sama ke dict (jika argumen bernama berbenturan dengan kunci yang ditentukan dalam argumen posisi, argumen bernama berlaku). Misalnya, berikut adalah solusi untuk masalah yang disebutkan sebelumnya bahwa kata kunci Python, dan nonidentifier lainnya, tidak dapat digunakan sebagai nama argumen

d = dict({'12ba':49, 'for': 23}, rof=41, fro=97, orf=42)
_

Jika Anda perlu membuat kamus dengan nilai yang sama untuk setiap kunci, panggil dict. fromkeys(keys_sequence, value) (jika Anda menghilangkan nilainya, defaultnya adalah Tidak Ada). Sebagai contoh, berikut adalah cara yang rapi untuk menginisialisasi kamus yang akan digunakan untuk menghitung kemunculan berbagai huruf ASCII huruf kecil

import string count_by_letter = dict.fromkeys(string.ascii_lowercase, 0)

Lihat juga

Referensi Pustaka dan Python di bagian Singkatnya pada built-in dict dan zip, dan pada modul itertools dan string

Dalam mode interaktif Python, setiap baris diasumsikan sebagai ekspresi yang dievaluasi. Nilai pengembalian diberikan kepada pengguna. Jadi, jika Anda mengevaluasi ekspresi string atau memanggil fungsi atau operasi yang mengembalikan string, hasilnya akan menampilkan tanda kutip di sekitar string untuk memberi tahu pengguna bahwa ini adalah hasil string.

# Quotes
>>> 'hello world'
'hello world'
_

Misalnya, jika Anda hanya mengevaluasi operasi matematika dengan hasil bilangan bulat, tanda kutip tidak akan ditampilkan

>>> 40 + 2
42

Bagaimana Anda bisa menghilangkan tanda kutip dan mencetak string Python tanpa tanda kutip?

Solusi 1. mencetak()

Saat dalam mode interaktif, hasil string ditampilkan dengan tanda kutip tunggal di sekitarnya untuk menunjukkan bahwa hasilnya adalah string. Tetapi jika Anda meneruskan string yang dihasilkan dalam panggilan fungsi print(...) sebagai argumen, tanda kutip akan hilang

# No Quotes
>>> print('hello world')
hello world
_

Ini karena fungsi print()_ secara otomatis mengubah setiap argumen menjadi representasi string dan mencetaknya ke output standar. Karena semua keluaran cetak adalah string, ini tidak memberikan nilai untuk menunjukkan tipe string dengan tipe terlampir. Jadi, Python hanya melewatkannya

Jangan ragu untuk menonton video berikut untuk mempelajari fungsinya lebih dalam

Fungsi Cetak Python [Dan Pemisah RAHASIA & Argumen Akhir]

Python dict ke string tanpa tanda kutip

Tonton video ini di YouTube

👉 Tutorial yang Direkomendasikan. Cara Menghapus Satu Set Kutipan Ganda dari String dengan Python

Solusi 2. rangkaian. mengupas()

Jika Anda ingin menghapus tanda kutip terlampir dari sebuah string sebelum mencetaknya, Anda dapat memanggil metode string.strip() dan meneruskan karakter tanda kutip tunggal dan ganda untuk dihapus dari awal dan akhir objek string yang disebutnya. Misalnya, ekspresi '"hello world"'.strip('"\'') menghapus semua tanda kutip tunggal dan ganda dan menghasilkan string sederhana

>>> 40 + 2
42
0

hi = '"hello world"'

print(hi)
# "hello world"

print(hi.strip('"\''))
# hello world

Perhatikan bahwa metode

>>> 40 + 2
42
_1 menghapus semua karakter dalam argumen string yang disediakan. Karena Anda perlu mengapit argumen string dalam tanda kutip ganda atau tunggal itu sendiri, Anda harus keluar dari karakter yang Anda gunakan untuk mengapit argumen string. Ini menghilangkan arti khusus (=tutup string) dari kutipan dan memberi tahu Python untuk menggunakan karakter kutipan

Sekali lagi, jangan ragu untuk menonton video berikut untuk mempelajari fungsinya lebih dalam

Metode String Python [Panduan Utama]

Python dict ke string tanpa tanda kutip

Tonton video ini di YouTube

Solusi 3. rangkaian. mengganti()

Pendekatan brute-force untuk menghapus semua tanda kutip dari string yang diberikan, bukan hanya yang terlampir, adalah dengan menggunakan metode

>>> 40 + 2
42
2 dan mengganti setiap kemunculan kutipan dengan string kosong
>>> 40 + 2
42
3. Misalnya, untuk terlebih dahulu menghapus semua tanda kutip ganda dan kemudian semua tanda kutip tunggal dari string
>>> 40 + 2
42
4, Anda dapat merangkai fungsi tersebut dua kali melalui
>>> 40 + 2
42
5

>>> s = 'hello """ world \'\'\' !!!'
>>> s
'hello """ world \'\'\' !!!'
>>> s.replace('"', '').replace("'", '')
'hello  world  !!!'

Tonton video berikut untuk mempelajari fungsinya lebih dalam

Metode String Python [Panduan Utama]

Python dict ke string tanpa tanda kutip

Tonton video ini di YouTube

Solusi 4. ulang. sub()

Fungsi regex

>>> 40 + 2
42
6 menggantikan semua kemunculan pola
>>> 40 + 2
42
7 dengan penggantian
>>> 40 + 2
42
8 dalam string
>>> 40 + 2
42
9. Ini mengembalikan string baru. Misalnya, jika Anda memanggil
# No Quotes
>>> print('hello world')
hello world
_0, hasilnya adalah string baru dengan semua tanda kutip tunggal atau ganda dihapus dari string
>>> 40 + 2
42
4

>>> import re
>>> s = 'hello """ world \'\'\' !!!'
>>> re.sub('["\']', '', s)
'hello  world  !!!'

Pola regex

# No Quotes
>>> print('hello world')
hello world
2 membuka kelas karakter yang dapat Anda lihat sebagai relasi OR—itu akan cocok dengan karakter petik ganda
# No Quotes
>>> print('hello world')
hello world
3 atau karakter petik tunggal
# No Quotes
>>> print('hello world')
hello world
4 (diloloskan untuk mencegah kesalahan sintaksis karena petik tunggal terakhir akan membuka string baru yang

Ya, ada video lain untuk mempelajari dan meningkatkan pemahaman Anda tentang fungsi vital ini

Python Regex Sub - Bagaimana Cara Mengganti Pola dalam sebuah String?

Python dict ke string tanpa tanda kutip

Tonton video ini di YouTube

Kemana Pergi Dari Sini?

Cukup teori. Mari kita berlatih

Pembuat kode dibayar enam digit atau lebih karena mereka dapat memecahkan masalah dengan lebih efektif menggunakan kecerdasan mesin dan otomasi

Untuk menjadi lebih sukses dalam pengkodean, selesaikan lebih banyak masalah nyata untuk orang-orang nyata. Begitulah cara Anda memoles keterampilan yang benar-benar Anda butuhkan dalam latihan. Lagi pula, apa gunanya teori belajar yang tidak dibutuhkan siapa pun?

Anda membangun keterampilan pengkodean bernilai tinggi dengan mengerjakan proyek pengkodean praktis

Apakah Anda ingin berhenti belajar dengan proyek mainan dan fokus pada proyek kode praktis yang memberi Anda uang dan memecahkan masalah nyata bagi orang-orang?

🚀 Jika jawaban Anda adalah YA. , pertimbangkan untuk menjadi pengembang lepas Python. Ini adalah cara terbaik untuk mendekati tugas meningkatkan keterampilan Python Anda—bahkan jika Anda benar-benar pemula

Jika Anda hanya ingin belajar tentang peluang freelancing, jangan ragu untuk menonton webinar gratis saya “Bagaimana Membangun Keterampilan Berpenghasilan Tinggi Anda Python” dan pelajari bagaimana saya mengembangkan bisnis coding saya secara online dan bagaimana Anda juga bisa—dari kenyamanan Anda

Bergabunglah dengan webinar gratis sekarang

Python dict ke string tanpa tanda kutip

Chris

Saat bekerja sebagai peneliti dalam sistem terdistribusi, Dr. Christian Mayer menemukan cintanya untuk mengajar siswa ilmu komputer

Untuk membantu siswa mencapai tingkat kesuksesan Python yang lebih tinggi, dia mendirikan situs web pendidikan pemrograman Finxter. com. Dia adalah penulis buku pemrograman populer Python One-Liners (NoStarch 2020), rekan penulis seri Coffee Break Python dari buku yang diterbitkan sendiri, penggemar ilmu komputer, pekerja lepas, dan pemilik salah satu dari 10 blog Python terbesar di dunia

Kesukaannya adalah menulis, membaca, dan coding. Tetapi hasrat terbesarnya adalah untuk melayani calon pembuat kode melalui Finxter dan membantu mereka meningkatkan keterampilan mereka. Anda dapat bergabung dengan akademi email gratisnya di sini

Bagaimana Anda melewatkan string tanpa tanda kutip dengan Python?

Metode 1. Cetak Daftar Tanpa Tanda Petik. Untuk mencetak daftar string tanpa tanda kutip, gunakan ekspresi '[' + ', '. join(lst) + ']' untuk membuat representasi string tunggal dari daftar tanpa tanda kutip di sekitar string individual.

Bagaimana cara menghapus tanda kutip dari kamus dengan Python?

Metode #1. Menggunakan pemahaman kamus + replace() . Pemahaman kamus digunakan untuk membuat ulang kamus.

Bisakah Anda mengonversi dict ke string Python?

Anda dapat dengan mudah mengonversi kamus Python menjadi string menggunakan fungsi str() . Fungsi str() mengambil objek (karena semua yang ada di Python adalah objek) sebagai parameter input dan mengembalikan varian string dari objek itu.

Bagaimana Anda mencetak string mentah dengan Python tanpa tanda kutip?

gunakan str. strip("'") atau [1. -1] memotong .